C++ Programming/기억해야할 점
7. 정렬 다루기
쵸빙
2020. 5. 3. 13:50
정렬을 다루면서 배운 점을 정리해보겠다.
● sort (#include <algorithm> 사용)
1. 오름차순 sort
sort(arr, arr+10);
여기서 10은 배열 arr의 크기이다.
2. 내림차순 sort
bool desc(int a, int b){
return a>b;
}
sort(arr, arr+10, desc);
사용자가 함수를 정의해서 정렬을 어떻게 할 것인지 정할 수 있다.
3. 벡터를 사용한 정렬
sort(v.begin(), v.end(), greater<자료형>()); → 내림차순 정렬
sort(v.begin(), v.end(), less<자료형>()); → 오름차순 정렬
● bubble sort 구현
void BubbleSort(int arr[], int n){
int i, j;
int temp;
for(i = 0;i < n - 1;i++){
for(j = 0;j < (n - i) - 1;j++){
if(arr[i] > arr[j + 1]){
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
계속 공부해나가면서 정렬과 관련하여 기억해야할 점을 채워나가겠다.