Selection Sort ( 선택정렬 )
방법 :
배열의 최솟값을 찾는다.
찾은 최솟값과 n 번째를 교환한다. (n=0부터 반복, n++)
#include <stdio.h> void swap(int * a, int * b); void main () { int arr[8] = {9, 1, 6, 8, 4, 3, 2, 0}; int i, a; int min = 10000; // 최솟값을 위한 int index = 0; int tmp; for (i=0; i<8; i++) // 배열 출력 printf("%d ", arr[i]); for (i=0; i<8; i++) { for (a=i; a<8; a++) { if (min > arr[a]) { index = a; min = arr[a]; } } swap(&arr[i], &arr[index]); min = 10000; } printf("\n"); for (i=0; i<8; i++) // 정렬 후 배열 출력 printf("%d ", arr[i]); } void swap(int * a, int * b) { int tmp; tmp = *a; *a = *b; *b = tmp; }Selection Sort
'Programming > C' 카테고리의 다른 글
VSCode mac C++ 디버깅 (0) | 2019.08.19 |
---|---|
단어 수 세기 프로그램 (1) | 2014.11.12 |
scanf %s로 공백까지 입력받는 방법 (0) | 2014.11.03 |
동적할당 (Dynamic allocation) (0) | 2014.09.25 |
메모리 구조 (0) | 2014.09.25 |