|算法|最坏复杂度|平均复杂度|最好复杂度|空间复杂度|稳定性| | | | | | | |选择排序|O($n^2$)|O($n^2$)|O($n^2$)|O(1)|不稳定| |插入排序|O($n^2$)|O($n^2$)|O($n$)|O(1)|稳定| |希尔排序|O($nlog(n))$~O($ ...
分类:
编程语言 时间:
2018-07-07 12:43:33
阅读次数:
203
package Sort; import java.util.Arrays; public class ShellSort { public static void main(String[] args) { int[] a = { 54, 35, 48, 36, 27, 12, 44, 44, 8... ...
分类:
编程语言 时间:
2018-07-05 10:20:31
阅读次数:
145
(1)希尔排序: 希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因DL.Shell于1959年提出而得名。 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含 ...
分类:
编程语言 时间:
2018-07-04 22:55:55
阅读次数:
187
常见的排序算法:1.冒泡排序;2.简单选择排序;3.直接插入排序;4.希尔排序;5.归并排序;6.快速排序;7.堆排序。 ...
分类:
编程语言 时间:
2018-07-03 15:07:47
阅读次数:
167
死磕算法之二分查找法 死磕算法之选择排序 死磕算法之插入排序 死磕算法之快速排序 死磕算法之堆排序 死磕算法之希尔排序 死磕算法之冒泡排序 持续更新中。。。。。。。。。。。。 死磕算法之二分查找法 死磕算法之选择排序 死磕算法之插入排序 死磕算法之快速排序 死磕算法之堆排序 死磕算法之希尔排序 死磕 ...
分类:
编程语言 时间:
2018-06-30 23:42:51
阅读次数:
187
学习更多算法系列请参考文章:死磕算法之汇总篇 今天讲一下希尔排序,希尔排序呢,其实可以理解为插入算法排序的一个升级版了,不了解插入排序的小伙伴可以先看一下这篇文章:死磕算法之插入排序 我们知道,插入排序在进行排序时如果当数据量很大的时候,有一个很小的数据出现在了数组的最后,那么我们就要移动了这个数据 ...
分类:
编程语言 时间:
2018-06-29 22:56:26
阅读次数:
192
1.插入排序和归并排序是稳定的,选择排序,希尔排序,快速排序,堆排序都是不稳定的。 2. 3.快速排序是最快的通用排序算法。 4.如果稳定性很重要而空间又不是问题,归并排序可能是最好的。 ...
分类:
编程语言 时间:
2018-06-28 17:36:12
阅读次数:
106
1、所有排序类型 直接插入排序 2路插入排序 希尔排序 快速排序 简单选择排序 树形选择排序 堆排序 归并排序 多关键字排序 链式基数排序 2、直接插入排序 3、2路插入排序 4、希尔排序 5、快速排序 6、简单选择排序 7、树形选择排序 8、堆排序 9、归并排序 10、多关键字排序 11、链式基数 ...
分类:
编程语言 时间:
2018-06-27 00:53:34
阅读次数:
177
一、C程序实现 运行结果: 二、Java程序实现 运行结果: 三、Python 代码实现 运行结果: ...
分类:
编程语言 时间:
2018-06-24 19:32:08
阅读次数:
171
https://blog.csdn.net/lucky51222/article/details/26110199 1. 构造算法类 class XiEr { public void ssort(int[] a, int n, int sp) { int i, j, t; for (i = 0; i ...
分类:
编程语言 时间:
2018-06-24 10:25:57
阅读次数:
192