[C++STL] max_element , min_element - 배열/벡터에서 최대,최소 찾기

    반응형

    C++STL max_element & min_element

    *개인적인 공부 내용을 기록한 글 이기에, 잘못된 내용이 있을 수 있습니다.


    #max_element, min_element

    C++STL의 algorithm 헤더는 자료구조(벡터,배열 등..)에서 간단하게 최대/최소값을 리턴해 주는 max_element와 min_element 를 제공한다. 

    max_element와 min_element는 이터레이터(iterator)를 반환하기에, 값을 읽을 때 *연산자로 접근 해야만 한다.

     

    #배열에서의 사용방법

    배열에서의 사용 방법은 *max/min_element(배열이름, 배열이름 + 원소개수(sizeof(배열이름)/sizeof(자료형)) 과 같이 사용하면 된다.

    #include <iostream>
    #include <algorithm> // max_element , min_element
    #include <vector>
    using namespace std;
    
    int main()
    {
    	cout << "array with max_element, min_element" << endl;
    	int ary[] = {1,2,3,4,5};
    	cout << "MAX in ary IS : "<< *max_element(ary, ary + sizeof(ary)/sizeof(int)) << endl;
    	cout << "MIN in ary IS : "<< *min_element(ary, ary + sizeof(ary)/sizeof(int)) << endl;
    }

     

    #벡터에서의 사용방법

    벡터에서의 사용방법은 *max/min_element(벡터이름.begin(), 벡터이름.end())와 같이 사용하면 된다.

     

    #include <iostream>
    #include <algorithm> // max_element , min_element
    #include <vector>
    using namespace std;
    
    int main()
    {
    	cout << "vector with max_element, min_element" << endl;
    	vector<int> vec = {1,2,3,4,5};
    	cout << "MAX in vec IS : "<< *max_element(vec.begin(), vec.end()) << endl;
    	cout << "MIN in vec IS : "<< *min_element(vec.begin(), vec.end()) << endl;
    	return 0;
    }

    반응형

    댓글

    Designed by JB FACTORY