반응형
728x170
삽입 정렬은 딱 느낌에도
삽입해서 만드니까 삽입정렬이다.
하지만 역시 느리다.
말로 표현하자면
#include <stdio.h>
int main(void){
int i, j, temp;
int array[10] = {1,3,5,7,9,10,8,6,4,2};
for(i = 0; i < 9; i++){ //9번 수행하면 됨.
j = i; //
while(j >= 0 && array[j] > array[j + 1]) { //이미 정렬되어 있는 상태라면 while문을 안들어감
temp = array[j] //크면 옆의 인덱스와 값을 바꾼다. 때문에. 바꿔진 값에 대해서도 while문 안에서 계속 비교해서 위치를 알려준다.
array[j] = array[j+1]
array[j+1] = temp;
j--;
}
}
return 0;
}
0번 인덱스부터 조사해서 만약 크면 오른쪽으로 옮기고
while문을 돌고 나오면 큰 값을 옮기면서도 작은값도 정렬이된다.
중간 결과물 또한 정렬되어있다는 점에서 쓸만할까...?
728x90
반응형
그리드형
'컴퓨터(Computer Science) > 자료구조(Data Structure)' 카테고리의 다른 글
[C언어] 자료구조 -정렬(sorting) - 4, 퀵정렬 (0) | 2021.03.23 |
---|---|
[C언어] 자료구조 -정렬(sorting) - 2, 버블정렬 (0) | 2021.03.23 |
[C언어] 자료구조 -정렬(sorting) - 1, 선택정렬 (0) | 2021.03.23 |
[C언어] 자료구조 - 가중치 그래프 Weighted Graph + Floyd -4 (0) | 2019.12.22 |
[C언어] 자료구조 - 가중치 그래프 Weighted Graph + Prim - 2 (0) | 2019.12.22 |