//插入排序(Insert sort);从小到大排序
#include<stdio.h>
int main()
{
int a[10];
int i,j,k;
printf("Please input ten number:\n"); // 1 5 8 4 10 2 6 7 9 3
for(i=0;i<10;i++)
scanf("%d",&a[i]);
/*****************************************************/
/***插入排序:把每个数从下标为1开始,每一项与前面的所有数比较***/
/***然后把大数向后移动,小的数继续与前面数的比较*/
for(i=1;i<10;i++)
{
k=a[i];
j=i-1;
while(j>=0 && a[j]>k) //若k<a[j],则把a[j]向后移
{
a[j+1]=a[j];
j--;
}
a[j+1]=k; //当前面所有比k大的数都移到k后面,插入数据
}
/****************************************************/
t2=clock();
printf("Output the number after sort:\n ");
for(i=0;i<10;i++)
printf("%d ",a[i]);
return 0;
}
插入排序
最新推荐文章于 2020-04-01 22:06:11 发布