C++ Sort() 사용법 및 사용자 정의 함수 compare

‘std::sort()’ 함수는 표준 라이브러리 알고리즘 ‘'에 정의되어 있으며, 주어진 범위의 요소들을 정렬하는 데 사용된다. 이 함수는 반복자를 사용하여 컨테이너의 시작과 끝을 나타내는 방식으로 작동하는데, 기본적으로 오름차순으로 요소를 정렬하지만, 사용자 정의 비교 함수를 통해 정렬 기준을 변경할 수 있다.

#include <algorithm>
#include <vector>
#include <iostream>

bool compare(int a, int b) {
    return a > b;
}

int main() {
    std::vector<int> v = {4, 1, 3, 5, 2};
    std::sort(v.begin(), v.end(), compare);

    for(int i : v) {
        std::cout << i << ' ';
    }
    // 출력: 5 4 3 2 1
    return 0;
}

‘std::sort()’는 일반적으로 퀵 정렬, 힙 정렬, 삽입 정렬 등의 조합을 사용하는 하이브리드 정렬 알고리즘을 구현한다. 하지만 정확한 구현은 컴파일러에 따라 달라질 수 있으며, 평균 시간 복잡도는 O(n log n)이다.




Enjoy Reading This Article?

Here are some more articles you might like to read next:

  • [백준] 11653번 소인수분해 / C++
  • [백준] 10825번 국영수 / C++
  • [백준] 1934번 최소공배수 / C++
  • [백준] 11650번 좌표 정렬하기 / C++
  • [백준] 1302번 베스트셀러 / C++