您的位置:首页 > 其它

第一篇日记-关于希尔排序

2006-11-27 16:15 211 查看
希尔排序(Shellsort)是冲破二次时间屏障的第一批算法之一,不过还是属于亚二次时间界的。

希尔排序的好坏和增量序列(increment sequence)有很大的关系,最坏的情况时间仍然为N2的

希尔排序就是按照序列中的数字由大到小,在要排列的数组按照序列中的数字互相比较,交换

例如序列为1,3,5

开始81941196123517952858417515
5排序后35171128124175159658819495
3排序后28121135154158179475819495
1排序后11121517283541587581949596
Sedgewick提出几种增量序列可以把最坏时间控制在N3/2,平均时间可以控制在N7/6

其中最好的序列是1,5,19,41,109,.. 该序列中的项或者是 9*4i- 9*2i+1 ( 1,19,109,505,...) 或者是4 - 3 * 2i + 1 (-1,-1,5,41,209, 929, ...) (这个增量在实践中最为人称道)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: