본문 바로가기
프로그래밍/알고리즘

알고리즘 정렬(sort) - 삽입정렬(Insert sort)

by -현's- 2012. 4. 1.
반응형

 

●삽입정렬(Insert sort)

- 자료 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입함으로써 정렬을 완성하는 알고리즘이다. 배열이 길수록 효율은 떨어진다.

출처 - 위키백과

 

●삽입정렬 코드

 #include<stdio.h>

int i, n=10, data[10] = {30,5, 32,11, 98, 34, 12, 54, 32, 543};

void insert(int array[], int n)
{
 int temp, k;
 temp = k = 0;

 for(i=1; i<n; i++)
 {
  temp = array[i];
  k=i-1;
  while(k>=0 && array[k]>temp)
  {
   array[k+1] = array[k];
   k--;
   array[k+1] = temp;
  }
 }
}

void output()
{
 for(i=0; i<n; i++)
 {
  printf("%d ", data[i]);
 }
 printf("\n");
}

int main()
{
 output();
 insert(data, n);
 output();
 return 0;
}

 

 

 

반응형

댓글