33问答网
所有问题
当前搜索:
希尔排序法
希尔排序
的复杂度是多少?
答:
希尔排序时间复杂度是 O(n^(1.3-2)),空间复杂度为常数阶 O(1)。希尔排序没有时间复杂度为 O(n(logn)) 的快速排序算法快 ,因此对中等大小规模表现良好,但对规模非常大的数据排序不是最优选择,总之比一般 O(n^2 ) 复杂度的算法快得多。
希尔排序(Shell Sort)是插入排序的一种
,它是针对直接插入排序算法...
希尔排序
的详细过程
答:
希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”,是直接插入排序算法的一种更高效的改进版本
。希尔排序是非稳定排序算法。该方法因D.L.Shell于1959年提出而得名。
希尔排序是把记录按下标的一定增量分组
,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增...
希尔排序
的思想
答:
希尔排序算法思想:希尔排序是按照下标增量进行分组,对每组使用插入排序算法进行排序
,随着增量减少,每组包含的关键字越来越多,增量减到1时,整个序列被分为一组,算法终止。我们以增序排序为例,希尔排序基本步骤:选择初始增量gap=length/2,缩小增量继续以gap=gap/2的方式进行,直到增量gap=1为止,增...
希尔排序
的详细过程
答:
希尔排序又叫递减增量排序算法
,它是在直接插入排序算法的基础上进行改进而来的,综合来说它的效率肯定是要高于直接插入排序算法的;希尔排序是一种不稳定的排序算法。希尔排序由唐纳德·希尔(Donald Shell)发明并于1959年公布,因此得名希尔排序。希尔算法 ...
希尔排序
的详解
答:
希尔排序基本思想:先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组
。所有距离为d1的倍数的记录放在同一个组中。先在各组内进行直接插入排序;然后,取第二个增量d2<d1重复上述的分组和排序,直至所取的增量dt=1(dt<dt-l<…<d2<d1),即所有记录放在同一组中进行直接插入...
数据结构:
希尔排序
答:
希尔排序
是基于插入排序的以下两点性质而提出改进方法的:说说我的个人理解:希尔排序其实就是直接插入排序的升级,原理就是先将整个待排序列按照某个增量(也称步长)分割成若干个子序列分别进行直接插入排序,然后合并,之后依次缩小增量大小在进行排序,当增量足够小(通常为1)时,再对全体元素进行直接插入...
排序(二)
希尔排序
、归并排序、快速排序
答:
希尔排序
是对插入排序的优化。希尔排序的思想:先使用数组中任间隔为h的元素有序,然后对全局进行排序。h该怎么取值呢?如果数组长度比较小,则可设置 h=3,h=1。若数组长度比较大,可以取 h=4,但最终还是得对全局进行排序:h=1。但如果数组很长呢?则可以设置 h=10,h=4,h=1。那如果再来一...
插入排序之“
希尔排序
”(C++实现)
答:
例:设待排序的表有10个元素,其关键字分别为(9,8,7,6,5,4,3,2,1,0),说明采用
希尔排序
方法进行排序的过程。解:第一趟排序时,d=10/2=5;整个表被分成5组,即(9,4)(8,3)(7,2)(6,1)(5,0),各组采用直接插入排序,结果为(4,9)(3,8)(2,7)(1...
希尔排序
和快排哪个快
答:
希尔排序
是不稳定的。
Shell排序
可以理解为插入排序的变种,它充分利用了插入排序的两个特点:1)当数据规模小的时候非常高效 2)当给定数据已经有序时的时间代价为O(N)所以,Shell排序每次把数据分成若个小块,来使用插入排序,而且之后在这若个小块排好序的情况下把它们合成大一点的小块,继续使用插入...
希尔排序法
,最坏情况需要几次比较?
答:
希尔排序法
,最坏情况下需要比较O(n^1.5)次 堆排序法,最坏情况需要O(nlog(2)(n))次 快速排序法,最坏情况需n(n-1)/2次 将整个无序序列分割成若干小的子序列分别进行插入排序。序列分割方法:将相隔某个增量h的元素构成一个子序列。在排序过程中,逐次减小这个增量,最后当h减到1时,进行...
1
2
3
4
5
6
7
8
9
10
涓嬩竴椤
灏鹃〉
其他人还搜
希尔排序的详细过程
希尔排序法考题
希尔排序简单说明
希尔排序算法实例讲解
希尔排序问题
归并排序算法过程图解
希尔排序法的增量
冒泡法升序排列
希尔排序详解