码迷,mamicode.com
首页 > 编程语言 > 详细

排序算法

时间:2017-03-05 00:24:59      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:思路   有序   code   位置   查找   int   处理   有序表   存储   

插入排序

直接插入排序

基本思路:将一个记录插入到已排序好的有序表中,从而得到一个新的有序表。即:先将序列的第1个记录看成是一个有序的子序列,然后从第2个记录逐个进行插入,直至整个序列有序为止。

技术分享

void InsertSort(int a[])  {  
    for(int i = 1; i < a.length; i++){  
        if(a[i] < a[i-1]){       //若小于则移动表后插入,大于则不做处理,即等于直接插入。
            int j = i-1;       
            int x = a[i];        //存储待排序元素  
            a[i] = a[i-1];       //后移一个元素  
            while(j>=0 && x < a[j]){     //查找在有序表的插入位置  
                a[j+1] = a[j];  
                j--;         //元素后移  
            }  
            a[j+1] = x;      //插入到正确位置  
        }  
    }  
}  

 

排序算法

标签:思路   有序   code   位置   查找   int   处理   有序表   存储   

原文地址:http://www.cnblogs.com/tengyunhao/p/6503167.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!