希尔排序 shell

Posted mckc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了希尔排序 shell相关的知识,希望对你有一定的参考价值。

希尔排序又叫缩小增量排序,是建立在插入排序上的威力加强版。

 

 

主要是利用了插入排序对逆序数越少的数组的排序,花费的时间就越少,的特性来进行优化;

                                        ↑简单来说就是越整齐排序所花时间也就越少;

 

 

希尔排序中通过比较相距一定间隔的元素,并使这个间隔不断减小,知道间隔为1,进行工作;

这也是缩小增量排序名称的由来;

 

 

实现一般使用for循环嵌套,然后依次比较n和n+k的元素,其中k是间隔;

间隔k的初始值一般使用N/2,N为数组元素个数;

 

看似使用了几个for嵌套,实际上花费的时间却很少,希尔排序最坏的情况使用O(N3/2);

 

以上是关于希尔排序 shell的主要内容,如果未能解决你的问题,请参考以下文章

希尔排序Shell sort

希尔排序(Shell sort)

希尔排序(Shell Sort)

希尔排序(Shell Sort)

408数据结构与算法—希尔排序 Donald Shell(十七)

408数据结构与算法—希尔排序 Donald Shell(十七)