컴퓨터(Computer Science)/자료구조(Data Structure)

[C언어] 자료구조 -정렬(sorting) - 3, 삽입정렬

게임이 더 좋아 2021. 3. 23. 03:14
반응형
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문을 돌고 나오면 큰 값을 옮기면서도 작은값도 정렬이된다.

 

중간 결과물 또한 정렬되어있다는 점에서 쓸만할까...?

 

반응형
그리드형