直接插入排序

来源:互联网 发布:淘宝怎么交30元保证金 编辑:程序博客网 时间:2024/06/08 10:09

直接插入排序:


代码:

#include<stdio.h>int insert(int a[],int num) {       intj;       for(inti=2; i<=10; i++) {              a[0]=a[i];              j=i-1;              while(a[0]<a[j]){                     a[j+1]=a[j];                     j--;              }              a[j+1]=a[0];       }}int main() {       inta[11];       for(inti=1; i<=10; i++)              scanf("%d",&a[i]);       insert(a,10);       for(inti=1; i<=10; i++)              printf("%d",a[i]);       return0;}


注释:

#include <stdio.h> void insort(int s[], int n) {                                        /*自定义函数isort*/       inti, j;       for(i = 2; i <= n; i++) {                            /*数组下标从2开始,0做监视哨,1一个数据无可比性*/              s[0]= s[i];                                                       /*给监视哨赋值*/               j= i - 1;                                                   /*确定要进行比较的元素的最右边位置*/              while(s[0] < s[j]) {                     s[j+ 1] = s[j];                                           /*数据右移*/                     j--;                                                    /*移向左边一个未比较的数*/              }              s[j+ 1] = s[0];                                                 /*在确定的位置插入s[i]*/       }} void main() {       inta[11], i;                                                             /*定义数组及变量为基本整型*/       printf("请输入10个数据:\n");       for(i = 1; i <= 10; i++)              scanf("%d",&a[i]);                                                 /*接收从键盘中输入的10个数据到数组a中*/       printf("原始顺序:\n");       for(i = 1; i < 11; i++)              printf("%5d",a[i]);                                                 /*将未排序前的顺序输出*/       insort(a,10);                                                           /*调用自定义函数isort()*/       printf("\n插入数据排序后顺序:\n");       for(i = 1; i < 11; i++)              printf("%5d",a[i]);                                                 /*将排序后的数组输出*/       printf("\n");}


版权说明

著作权归作者所有©。 商业转载请联系作者获得授权,非商业转载请注明出处。 本文作者:Joe.Smith发表日期:2016年10月7日 本文链接:http://blog.csdn.net/qq_26816591/article/details/52782255来源:CSDN 更多内容:关于visual studio 2010 直接复制粘贴会出现乱码的解决方法 

 

0 0
原创粉丝点击