#include<stdio.h>
#define N 10
void Half_Sort(int a[])
{
for(int i=1;i<N;i++)
{
int x=a[i];
int low=0,high=i-1;
while(low<=high)
{
int mid=(low+high)/2;
if(x<a[mid])
high=mid-1;
else
low=mid+1;
}
for(int j=i-1;j>=low;j--)
a[j+1]=a[j];
a[low]=x;
}
}
int main(void)
{
int a[N]={3,2,8,5,4,7,6,9,1,10};
printf("原始数据为:\n");
for(int i=0;i<N;i++)
printf("%d ",a[i]);
printf("\n\n");
Half_Sort(a);
printf("使用插入排序后的数据为:\n");
for(int i=0;i<N;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}