直接插入排序
2016-10-08 22:47
239 查看
#include<stdio.h>
void insort(int s[],int n)
{
int i,j;
for(i=2;i<n;i++)
{
s[0]=s[i];/*给监视哨赋值*/
j=i-1;
while(s[0]<s[j])
{
s[j+1]=s[j];
j--;
}
s[j+1]=s[0];
}
}
void main()
{
int a[11],i;
printf("请输入10个数据:\n");
for(i=1;i<=10;i++)
scanf("%d",&a[i]);
printf("原始顺序:\n");
for(i=1;i<11;i++)
printf("%5d",a[i]);
insort(a,10);
printf("\n 插入数据排序后顺序 \n");
for(i=1;i<11;i++)
printf("%5d",a[i]);
printf("\n");
}
void insort(int s[],int n)
{
int i,j;
for(i=2;i<n;i++)
{
s[0]=s[i];/*给监视哨赋值*/
j=i-1;
while(s[0]<s[j])
{
s[j+1]=s[j];
j--;
}
s[j+1]=s[0];
}
}
void main()
{
int a[11],i;
printf("请输入10个数据:\n");
for(i=1;i<=10;i++)
scanf("%d",&a[i]);
printf("原始顺序:\n");
for(i=1;i<11;i++)
printf("%5d",a[i]);
insort(a,10);
printf("\n 插入数据排序后顺序 \n");
for(i=1;i<11;i++)
printf("%5d",a[i]);
printf("\n");
}
相关文章推荐
- 第十五周实践项目1—验证算法(2)直接插入排序
- 直接插入排序
- 直接插入排序
- 插入排序(直接插入排序,折半插入排序,2路插入排序)
- 算法:直接插入排序
- 白话经典算法系列之二 直接插入排序的三种实现
- java直接插入排序
- 第十六周 项目一 (1) 显示直接插入排序过程
- 直接插入排序
- Java---插入类排序(直接插入排序,希尔排序)
- C++_直接插入排序
- 排序算法---基础算法(冒泡排序,快速排序,选择排序,直接插入排序,桶排序)
- 排序—插入排序(直接插入排序)
- 白话经典算法系列之二 直接插入排序的三种实现
- 直接插入排序
- 直接插入排序(哨兵和越界)
- 【转载】白话经典算法系列之二 直接插入排序的三种实现
- 排序---直接插入
- 排序 -- 直接插入排序
- 程序员必知的8大排序(①直接插入排序②希尔排序③简单选择排序④堆排序⑤冒泡排序⑥快速排序⑦归并排序⑧基数排序)