현재 자료 중 가장 작은 값을 찾아 첫 번째 위치로 놓은 후
그 다음 자료 중 가장 작은 값을 찾아 두 번째 위치로 가져다 놓는 형태를 반복
http://www-scf.usc.edu/~zhan468/public/Notes/resources/1C7E20F306DDC02EB4E3A50FA7817FF4.gif
#include <stdio.h>
int main(){
int i, j, n=4, temp;
int list[4]={4, 5, 1, 2};
for(i=0; i<n-1; i++){ // 하나씩 결정
k=i;
for(j=i+1; j<n; j++){ // i 이후를 다 돌면서
if(list[j] < list[k]){ // 가장 작은 값 선택
k=j;
}
}
temp = list[i]; //swap
list[i] = list[k];
list[k] = temp;
}
for(i=0; i<n; i++){
printf("%d ", list[i]);
}
}
당신의 시간이 헛되지 않는 글이 되겠습니다.
I'll write something that won't waste your time.