/*直接插入排序算法的时间复杂度为O(n^2),
它是稳定的排序算法*/
#include <stdio.h>
int a[1000];
int main()
{
int n,i,j,temp;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
for(i=2;i<=n;i++)
{
j=i-1;
temp=a[i];
while(temp<a[j]&&j>=1)
{
a[j+1]=a[j];
j--;
}
a[j+1]=temp;
}
for(i=1;i<=n;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
直接插入排序算法-不设置哨兵版
最新推荐文章于 2023-03-24 00:05:39 发布