1、序言
这是《漫谈经典排序算法系列》第二篇,解析了各种插入排序算法。主要包括:直接插入排序、折半插入排序、表插入排序、希尔插入排序。每一种算法的开头都叙述了引出该算法的原因,然后给出代码,最后分析算法效率及和其他插入排序相比,优劣在哪里。
各种排序算法的解析请参考如下:
《漫谈经典排序算法:五、线性时间排序(计数、基数、桶排序)》
注:为了叙述方便,本文以及源代码中均不考虑A[0],默认下标从1开始。
2、直接插入排序
2.1 引出
给定待排序序列A[ 1.....n ],现假设A[1...i]已经有序,那么我们取出A[i+1]插入到序列A[1...i].这样有序序列记录数就增加了1.如此重复上述操作,不断取出记录插入有序序列,直到A[n]插入到有序序列,排序完成。

本文是《漫谈经典排序算法》系列的第二篇,详细解析了四种插入排序算法:直接插入排序、折半插入排序、表插入排序和希尔排序。每种排序算法包括引出原因、代码实现和效率分析。直接插入排序和折半插入排序在记录基本有序时有优势,表插入排序减少了移动次数,希尔排序通过增量序列优化了直接插入排序。
最低0.47元/天 解锁文章
29





