排序算法-希尔排序
2021-02-14 16:17
阅读:626
希尔排序的思想:将序列看成一个矩阵,根据一个步长序列将原序列分成m个列,逐列进行排序,直到列数变为1列为止
因此希尔排序的时间复杂度与步长关系密切。
希尔本人给出的步长序列为: n / (2^k),其中n为序列元素的个数,k >= 1,取整数
举例: 序列元素有32个,那步长序列为 [1, 2, 4, 8, 16],在进行希尔算法时,按步长从大到时小,先分成16列,再8列....最后分成一列,即完成排序
上一篇:线性时间排序
下一篇:Python数据类型介绍(一)
评论
亲,登录后才可以留言!