直接插入排序法

原创 2006年06月21日 00:18:00

#include "stdio.h"
#include "conio.h"

main()
{
    int a[]={8,6,7,5,3,4,2,1,0,9},i,j,k,m;
    for(i=1;i<10;i++){
      for(j=0;j<i;j++)
        if(a[i]<a[j]){   /*从数组开头查找,如果找到了比a[i]大的数,则处理*/
        k=a[i];           //用k保存a[i]
        for(m=i;m>=j+1;m--)  /*m:i---->j+1 ,为了把a[i]插入而腾出空间 */
           a[m]=a[m-1];    //移动
        a[j]=k;             //赋值
        break;
        }
     for(k=0;k<10;k++)
       printf("%d  ",a[k]); //输出每次插入后的整个数组,以便学习
     printf("/n/n");
      }

    printf("/n/npress any key to display the result.../n/n");
    getch();
    for(k=0;k<10;k++)
       printf("%d  ",a[k]);

    getch();
}

 

 

本来还得写个链表实现的,但明天要考试,还是早点休息比较好^_^

相关文章推荐

直接插入排序法和分治法

  • 2011年04月09日 03:05
  • 2KB
  • 下载

直接插入排序的C实现

  • 2013年05月16日 11:20
  • 495B
  • 下载

带哨兵的直接插入排序法

/*--------------------------------------------------------------------------------------------     ...

直接插入排序

  • 2014年03月25日 15:22
  • 1.02MB
  • 下载

直接插入排序

  • 2015年10月06日 22:02
  • 1.01MB
  • 下载

数据结构 - 直接插入排序法

数据结构 - 直接插入排序法。之前的博文已经介绍了 冒泡排序法 和 简单选择排序法. 其实上面两种的基本思路是一样的, 就是通过两层循环, 在每1个内循环中找到1个未排序的极值元素, 然后把这个元...
  • nvd11
  • nvd11
  • 2017年02月01日 22:02
  • 171

直接插入排序方法二.c

  • 2017年08月15日 22:49
  • 600B
  • 下载

java 直接插入排序

  • 2015年08月20日 04:12
  • 8KB
  • 下载

直接插入排序法

基本思想: 以数组为例,假设需要对N个元素的数组排序。将数组的分成两部分,一部分有序,一部分无序,遍历无序的数组,把其中元素插入到有序数组中,完成数组的排序。 第一步,假设第一个元素或最后一个元素...

直接插入排序java源码

  • 2013年06月04日 20:31
  • 703B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:直接插入排序法
举报原因:
原因补充:

(最多只允许输入30个字)