본문 바로가기
C & C++

[C++] sort algorithm 설명 및 사용법

by GGolDDuKi 2022. 3. 14.

sort 알고리즘이란?

sort 알고리즘은 C++STL에서 제공해주는 알고리즘으로,
인자를 오름차순, 내림차순 정렬할 때에 편리하게 정렬을 가능하게 해준다

▶ <algorithm> 헤더파일에 속해있음.
▶ 원형은 아래와 같음.

template <class _RanIt, class _Pr> void sort(const _RanIt _First, const _RanIt _Last, _Pr _Pred)

▶ sort(First, Last, Order) 형태로, [First, Last)의 범위를 정렬해줌.
▶ 3번째 인자(Order)를 주지 않을 경우, Default로 오름차순 정렬.
▶ sort(First, Last, greater<type>()); -> 내림차순
sort(First, Last, less<type>()); -> 오름차순
sort(First, Last, 사용자지정함수); -> 지정 조건을 따르는 정렬

사용법 예시

#include <iostream> #include <algorithm> using namespace std; int main() { int arr[5] = { 3, 7, 9, 1, 5 }; for (int i = 0; i < 5; i++) { ‌‌cout << arr[i] << "  "; //sort정렬 전 출력 } ‌cout << endl; sort(arr, arr + 5); for (int i = 0; i < 5; i++) { ‌‌cout << arr[i] << "  "; //sort정렬 후 출력(default,less - 오름차순) } ‌cout << endl; sort(arr, arr + 5, greater<int>()); for (int i = 0; i < 5; i++) { ‌‌cout << arr[i] << "  "; //sort정렬 후 출력(greater - 내림차순) } }

실행결과

 

[참고]
http://www.cplusplus.com/reference/algorithm/sort/

반응형

댓글