直接插入排序法

简介:

复制代码
void InserSort(int a[],int n)//直接插入排序 
{
    int i,j,t;
    for(i=1;i<n;i++)//第i个元素前面的元素都已经排好序
    {
        t=a[i];     //取出一个未排序的数据 
        for(j=i-1;j>=0 && t<a[j];--j)     //找到这个位置后先跳出循环在进行赋值
            a[j+1]=a[j]; //向后移动数据 
        a[j+1]=t; //插入数据到序列 
}

//另一种方法
for(i=1;i<n;i++) { t=a[i]; for(j=i-1;j>=0;--j){ if(t<a[j]) {a[j+1]=a[j];} //向后移动数据 else { break;}//解决不能与0位置元素进行比较(跳出循环在进行赋值) } a[j+1]=t; } }
复制代码

 


本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/4485420.html,如需转载请自行联系原作者

相关文章
|
2月前
|
搜索推荐 C++
C++插入排序的实现
C++插入排序的实现
|
2月前
直接插入排序与希尔排序
直接插入排序与希尔排序
24 2
|
3月前
|
搜索推荐
直接插入排序和希尔排序
直接插入排序和希尔排序
34 0
|
4月前
|
存储 搜索推荐 算法
插入排序(一)——直接插入排序与希尔排序
插入排序(一)——直接插入排序与希尔排序
31 1
|
5月前
|
搜索推荐 算法 测试技术
排序算法:插入排序(直接插入排序、希尔排序)
排序算法:插入排序(直接插入排序、希尔排序)
38 0
|
7月前
|
搜索推荐
插入排序
插入排序。
19 0
|
9月前
|
搜索推荐 测试技术 C++
【插入排序】直接插入排序 与 希尔排序
【插入排序】直接插入排序 与 希尔排序
|
10月前
InsertSort-->直接插入排序
InsertSort-->直接插入排序
|
11月前
|
算法
插入排序之直接插入排序
一、基本思想: 依次将每个记录(无序表)插入到一个已排好序的有序表中,得到一个新的,记录增加1的有序表;