摘要:
直接插入排序在时间复杂度上优势不明显。达到O(n2)的水平了,所以需要想办法降低时间复杂度是很有必要的。当记录的排序就是所求的排序时,时间复杂度会大幅下降,为O(n)。这是最理想的状态,当顺序刚好是逆序的时候,时间复杂度最大为O(n2)。所以记录越是有序,时间复杂度越低。这个和快速排序不同,大家都知道快速排序在有序的情况下效果是很差的吧。现在的问题是,如何使得记录变得有序,这个也是我们求的最后结果。希尔排序是一种很好的选择,它的原理是使得记录大体上有序,虽然不是所有都有序,但是大体上有序也是很加快排序速度的。希尔排序(Shell Sort)是插入排序的一种。是针对直接插入排序算法的改进。插入排 阅读全文