반응형
Select Sort 를 구현해 보겠다.
선택정렬은 오름차 정렬 시 한가지를 Select 하여 선택된 값과 최소값을 찾아 Swap 하는 방식이다.
장점은 비교적 구현이 간단하며 Bubble Sort에 비해 복잡도가 빠르다.
하지만 Sort Size가 커질수록 느려진다는 단점이 있다.
#include <stdio.h>
#define DATA_SIZE 10
int main(void)
{
int data[DATA_SIZE] = { 10, 21, 41, 31, 2, 5, 9, 26, 27, 29 };
int i, j, temp, tempValue;
for (i = 0; i < DATA_SIZE -1; i++)
{
tempValue = i;
for (j = i + 1; j < DATA_SIZE; j++)
{
if (data[tempValue] > data[j])
tempValue = j;
}
temp = data[i];
data[i] = data[tempValue];
data[tempValue] = temp;
}
for (i = 0; i < DATA_SIZE; i++)
{
printf("%3d", data[i]);
}
printf("\n");
getchar();
return 0;
}
반응형
'Algorithm' 카테고리의 다른 글
| Merge Sort (0) | 2020.03.04 |
|---|---|
| Quick Sort (0) | 2020.03.03 |
| Bubble Sort (0) | 2020.03.03 |
| Double LinkedList (0) | 2020.03.03 |
| Stack 자료구조 (0) | 2020.02.22 |