插入排序与希尔排序算法

希尔算法:

先对列表分组,再对每组元素分别做插入排序。

元素分组是通过设置步长(gap,即组的数量)实现的。每一组元素内,相邻元素之间的距离(步长)固定。

类似将一把把小剑慢慢铸成一把大剑

插入排序与冒泡排序时间复杂度相同(O(n^2)),但执行速度快,是因为需要执行的代码行数少(寻找到插入位置前,插入排序每次判断仅移动一个元素,冒泡排序却需要更换两个元素的值。)。

原文地址:https://www.cnblogs.com/wllhq/p/13140655.html