码迷,mamicode.com
首页 >  
搜索关键字:希尔排序算法    ( 68个结果
OJ刷题---希尔排序
算法分析: 希尔排序是一种按照增量排序的方法。其中增量值是小于n的正整数。   shell排序的基本思想[1]是:     先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组。所有距离为dl的倍数的记录放在同一个组中。先在各组内进行直接插人排序;然后,取第二个增量d2 可以根据下图形象理解: (1)初始增量为3,该数组分为...
分类:编程语言   时间:2015-06-04 10:00:45    阅读次数:193
希尔排序
编程实现希尔排序算法,按照非递减排序,测试数据为整数。 Description 第一行是待排序数据元素的个数n; 第二行是待排序的数据元素。 Input 一趟希尔排序后的结果。 Output 1 2 3 10 50 36 41 19 23 4 20 18 12 22 ...
分类:编程语言   时间:2015-06-02 22:01:52    阅读次数:161
Hark的数据结构与算法练习之希尔排序
算法说明希尔排序是插入排序的优化版。插入排序的最坏时间复杂度是O(n2),但如果要排序的数组是一个几乎有序的数列,那么会降低有效的减低时间复杂度。希尔排序的目的就是通过一个increment(增量)来对数列分组进行交换排序,最终使数列几乎有序,最后再执行插入排序,统计出结果。通过increment=...
分类:编程语言   时间:2015-03-18 07:48:05    阅读次数:128
希尔排序
希尔排序算法 一、基本思想:分组增量插入方法,先取定一个小于 n 的整数 d1 作为第一个增量,把表的全部记录分成d1 个组,所有间距为d1 的倍数的记录放置在同一个组,再在各组内进行直接插入排序,依次类推,直至所取的增量 di=1,即将所有的记录都放置在同一个组中进行直接插入排序为止。 ...
分类:编程语言   时间:2015-03-05 23:35:41    阅读次数:192
八大排序算法总结
八大排序算法实现 插入排序算法实现 希尔排序算法实现 选择排序算法实现 冒泡排序算法实现 归并排序算法实现 快速排序算法实现 堆排序算法实现 基数排序算法实现...
分类:编程语言   时间:2015-02-15 15:11:43    阅读次数:154
希尔排序算法的实现
希尔排序(Shell Sort)是插入排序的一种,它是针对直接插入排序算法的改进。该方法又称缩小增量排序,因DL.Shell于1959年提出而得名。 希尔排序实质上是一种分组插入方法。它的基本思想是:对于n个待排序的数列,取一个小于n的整数gap(gap被称为步长)将待排序元素分成若干个组子序...
分类:编程语言   时间:2015-01-13 11:58:03    阅读次数:202
各种排序的实现与复杂度分析(持续更新)
稳定性: 选择排序、快速排序、希尔排序、堆排序不是稳定的排序算法, 冒泡排序、插入排序、归并排序和基数排序是稳定的排序算法。 复杂度 冒泡法:  复杂度为O(n*n)。当数据为正序,将不会有交换。复杂度为O(0)。不说了。 直接插入排序:O(n*n) 希尔排序:算法的复杂度为n的1.2次幂 选择排序:O(n*n) 快速排序:不稳定,平均时间复杂度O(nlog...
分类:编程语言   时间:2015-01-10 01:09:47    阅读次数:222
希尔排序算法
/* Date:2014.12.14 希尔排序思路:基于插入排序的思想。 流程:1).将有 n 个元素的数组分成 n/2 对,第1个数据和第(n/2 + 1)个数据为一对,依次配对;             2).一次循环使每一个序列对排好顺序;             3).再分为 n/4 对进行排序;             4).重复操作,随序列对数的减少最后变为1个,就完成了整个...
分类:编程语言   时间:2014-12-14 22:50:57    阅读次数:261
希尔排序算法
思想简单描述: 在直接插入排序算法中,每次插入一个数,使有序序列只增加1个节点,并且对插入下一个数没有提供任何帮助。如果比较 相隔较远距离(称为增量)的数,使得数移动时能跨过多个元素,则进行一次比较就可能消除多个元素交换。D.L.shell于 1959年在以他名字命名的排序算法中实现了这一思想。算法先将要排序的一组数按某个增量d分成若干组,每组中记录的 下标相差d.对每组中全部元素进行排序...
分类:编程语言   时间:2014-12-02 17:19:05    阅读次数:196
算法 - 内部排序方法总结
各种排序方法的性能比较 排序方法 最好时间复杂度 平均时间复杂度 最坏时间复杂度 空间复杂度 稳定性 直接插入排序 O(n) O(n2) O(n2) O(1) 稳定 简单选择排序 O(n2) O(n2) O(n2) O(1) 不稳定 冒泡排序 O(n) O(n2) O(n2) O(1) 稳定 希尔排序 - ...
分类:编程语言   时间:2014-11-29 20:15:57    阅读次数:218
68条   上一页 1 ... 4 5 6 7 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!