10.3.3 希尔排序

更新于 2026年10月10日 版权声明
10.3.3 希尔排序

希尔排序(Shell’s Sort)也称为缩小排序算法,是插入排序算法的一种更高效改进算法,该方法由DL.Shell于1959年提出而得名。其实现思路为:分组增量实现插入排序算法,第一轮分组插入排序结束后增量缩小,进入第二轮分组,依次类推,一直到增量为1后,完成最后一轮插入排序操作。

在实际操作时,第一轮增量一般采用队列元素个数的一半作为第一次增量操作d1=n//2(n为奇数时,d1=n//2+1);从第二轮开始每轮增量减1;一直到增量减少到1为止。

其实现原理举例如图10.6所示。

图示

图10.6 希尔排序演示举例(https://www.daowen.com)

代码文件:10_3_3_ShellSort.py

图示

代码执行结果如下:

图示

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)