C语言 直接插入排序法
#include
int insertSort(int s[],int n)
{
int i,j,t;
for (i=1;i
{
t=s[i]; /* 操作当前元素,先保存在其它变量中 */
for (j=i-1;j>-1&&s[j]>t;j--) /* 从当前元素的上一个元素开始查找合适的位置 */
{
s[j+1]=s[j]; /* 一边找一边移动元素 */
s[j]=t;
}
}
return 0;
}
int main()
{
int i;
int a[]={47,34,16,95,1};
insertSort(a,5);
for(i=0;i<5;i++)
printf("%d\n",a[i]);
return 0;
}
#include
int insertSort(int s[],int n)
{
int i,j,t;
for (i=1;i
{
for (j=i-1;j>=0;j--) /* 从当前元素的上一个元素开始查找合适的位置 */
{
t=s[j+1];
if(s[j]>t)
{
s[j+1]=s[j]; /* 一边找一边移动元素 */
s[j]=t;
//printf("%d\n",t);
}
}
}
retur
n 0;
}
int main()
{
int i;
int a[]={47,34,16,95,1};
insertSort(a,5);
for(i=0;i<5;i++)
printf("%d\n",a[i]);
return 0;
}