#include <stdio.h>
void shell_sort(int a[],int n)
{
int gap,i,j,temp,k;
for(gap=n/2;gap!=0;gap=gap/2)
for(i=0;i<gap;i++)
for(j=i;j<=n-gap;j=j+gap)
{
temp=a[j+gap];
for(k=j;temp<a[k]&&k>=i;k=k-gap)
a[k+gap]=a[k];
a[k+gap]=temp;
}
}
int main(int argc, const char * argv[])
{
int a[9]={9,8,7,6,5,4,3,2,1};
shell_sort(a,9);
for(int i=0;i<9;i++) printf("%d ",a[i]);
printf("\n");
return 0;
}
希尔排序
最新推荐文章于 2023-09-23 16:26:22 发布