直接插入排序
2012-09-13 22:03
169 查看
顾名思义, 直接插入排序就类似于我们打扑克牌时, 一边摸牌, 一边理牌。先拿第一张牌在手上, 再拿第二张牌时, 我们比较一下大小, 才知道是
把牌插入左边还是右边, 下面摸牌都是类似的了。
因此直接插入排序的过程为: 先将序列中的第一个记录看作是有序的子序列, 然后从第二个记录起逐个进行插入, 直至整个序列变为
按关键字递增的有序序列为止。
把牌插入左边还是右边, 下面摸牌都是类似的了。
因此直接插入排序的过程为: 先将序列中的第一个记录看作是有序的子序列, 然后从第二个记录起逐个进行插入, 直至整个序列变为
按关键字递增的有序序列为止。
/** * 对顺序表L作直接插入排序 * */ void InsertSort(SqList *L) { int i, j; for (i = 2; i < L->length; i++) { if (L->r[i+1] < L->r[i]) { L->r[0] = L->r[i]; // 哨兵 for (j=i-1; L->r[j] > L->r[0]; j--) { L->r[j+1] = L->r[j]; // 记录后移 } L->r[j+1] = L->r[0]; // 插入 } } }
相关文章推荐
- 排序算法(一):插入排序(直接插入排序、希尔排序)
- 直接插入排序
- Java实现直接插入排序
- Java排序算法(三):直接插入排序
- 直接插入排序
- 数据结构之排序:直接插入排序
- 排序算法(2):直接插入排序
- 直接插入排序
- 直接插入排序 练习
- 排序系列--直接插入排序
- 直接插入排序
- 排序算法(三) 直接插入排序与折半插入排序
- 直接插入排序
- 算法---插入排序(直接插入排序)
- 排序之直接插入排序学习笔记
- 基础算法——直接插入排序
- 直接插入排序
- 第16周项目1-验证算法(1)直接插入排序
- 排序-插入类排序 - 希尔排序,直接、折半插入排序
- 排序算法总结(冒泡排序、直接插入排序、希尔排序)(python实现)