본문 바로가기
C++ Programming/기억해야할 점

7. 정렬 다루기

by 쵸빙 2020. 5. 3.

정렬을 다루면서 배운 점을 정리해보겠다.

 

 

 

 

 

 

● 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;
            }
        }
    }
}

 

 

 

 

 

 

 

 

 

계속 공부해나가면서 정렬과 관련하여 기억해야할 점을 채워나가겠다.

'C++ Programming > 기억해야할 점' 카테고리의 다른 글

9. stl vector 다루기  (0) 2020.05.03
8. 배열 다루기  (0) 2020.05.03
6. 문자열 다루기  (0) 2020.05.03
5. 알고리즘  (0) 2020.05.03
4. switch문, goto문  (0) 2020.05.03