http://baike.baidu.com/view/396887.htm
#include <stdio.h>
#include <stdlib.h>
void insert_sort(int *array, int n)
{
int i,j;
int temp;
for(i = 1; i < n; i++)
{
temp = array[i];
for(j = i; j > 0 && array[j-1] > temp; j--)
{
array[j] = array[j-1];
}
array[j] = temp;
}
}
void main()
{
int i;
int num_array[20];
srand(0);
printf("\r\n init: ");
for(i = 0; i < 20; i++) {
num_array[i] = rand()%1000;
printf("%d ", num_array[i]);
}
insert_sort(num_array, 20);
printf("\r\n insert sort: ");
for(i = 0; i < 20; i++) {
printf("%d ", num_array[i]);
}
}