C++ 정렬 sort() 사용 방법 오름 차순, 내림 차순 예제

C++에서 정렬을 하는 방법에 대해 알아보겠습니다.

정렬을 간단하게 하는 방법으로는 sort() 함수를 사용하는 방법이 있습니다.

sort() 함수를 사용하기 위해서는 algorithm를 include 해야 합니다.

sort() 함수를 사용해 오름 차순을 정렬하는 방법을 보겠습니다.

#include <iostream> 
#include <algorithm>

using namespace std; 

int main(void){ 
  
  //정렬이 안된 배열값
  int arr[10] = {4, 5, 8, 7, 10, 1, 3, 2, 9, 6}; 
  
  // 정렬
  sort(arr, arr+10); 

  //출력
  for(int i=0; i<10; i++){
    cout << arr[i] << ' '; 
  } 
  return 0; 
}

 

결과

1 2 3 4 5 6 7 8 9 10

 

배열에 정렬이 안된 값을 지정했습니다.

sort() 함수를 사용해 오름 차순으로 값을 정렬되었습니다.

오름차순으로 정렬을 하기 위해서는 sort(begin, end) 형식으로 함수에 값을 지정합니다.

end에는 배열의 크기만큼 +를 지정해줘야 합니다.

이번에는 내림 차순으로 정렬을 하는 방법을 보겠습니다.

#include <iostream>
#include <algorithm>

using namespace std; 


int main(void){ 

  // 정렬이 안된 배열값
  int arr[10] = {4, 5, 8, 7, 10, 1, 3, 2, 9, 6}; 
  
  // greater 함수를 사용해 내림차순으로 정렬 
  sort(arr, arr+10, greater<int>()); 
  for(int i=0; i<10; i++){ 
    cout << arr[i] << ' '; 
  } 
  
  return 0; 
}

 

결과

10 9 8 7 6 5 4 3 2 1

 

내림 차순으로 정렬이 되었습니다.

내림 차순 작성 방법을 보면 sort(begin, end, greater<자료형>) 형태로 작성했습니다.

기본적으로 begin, end 지정을 오름차순과 같습니다.

sort() 함수에 greater를 사용해 내림 차순으로 결과를 얻을 수 있습니다.

sort() 함수를 사용해 정렬하는 경우 오름 차순과 내림 차순의 작성방법의 차이는 마지막에 greater를 설정하는지에 따라 달라집니다.

댓글