Java实现的12种排序 2019-01-05 一.冒泡排序及其实现 二.希尔排序及其实现 三.插入排序及其实现 四.插入排序及其实现 五.快速排序及其实现 六.合并排序及其实现 七.计数排序及其实现 八.基数排序及其实现 九. 桶排序及其实现 十. 堆排序及其实现 十一.二叉树排序及有序集合 十二 ...
分类:
编程语言 时间:
2019-01-06 00:03:00
阅读次数:
213
插入排序、选择排序、冒泡排序、希尔排序、堆排序、快速排序、归并排序、基数排序 ...
分类:
编程语言 时间:
2019-01-03 12:59:18
阅读次数:
180
概述 简单来说, 计数排序就是申请一个相同数据范围的数组空间, 计算每个数字各有几个,如此即可. 如一个数组为: [5, 2, 3, 4, 6, 3, 1, 0] 申请一个长度为6的数组(因为数组范围为0-5), 其中的值为: [1, 1, 1, 2, 1, 1, 1] 其数组意思就是, 0有1个, ...
分类:
编程语言 时间:
2019-01-02 23:24:59
阅读次数:
223
计数排序引入 不难发现不论是冒泡排序还是插入排序,其排序方法都是通过对每一个数进行两两比较进行排序的,这种方法称为比较排序,实际上对每个数的两两比较严重影响了其效率,理论上比较排序时间复杂度的最低下限为nlog(n),即任何比较排序的时间复杂度将不会低于nlog(n),那么有没有方法能不经过数列比较 ...
分类:
编程语言 时间:
2018-12-30 16:25:42
阅读次数:
241
刷知乎的时候看到的题目,思路是评论区大佬给的 有点像排序里的计数排序法 代码如下 ...
分类:
其他好文 时间:
2018-12-29 19:43:37
阅读次数:
166
常用排序算法 目录 一、冒泡排序 二、选择排序 三、插入排序 四、快速排序 五、堆排序 六、归并排序 七、基数排序 八、希尔排序 九、桶排序 十、总结 一、冒泡排序 1、思路:首先,列表每两个相邻的数比较大小,如果前边的比后边的大,那么这两个数就互换位置。就像是冒泡一样 2、代码关键点: 趟数:n- ...
分类:
编程语言 时间:
2018-12-27 03:17:25
阅读次数:
241
排序的目的是什么?便于查找! 如何衡量排序算法的好坏? 时间效率排序速度(比较次数与移动次数) 空间效率占内存辅助空间的大小 稳定性A和B的关键字相等,排序后A、B的先后次序保持不变,则称这种排序算法是稳定的。 按待排序记录所在位置,分为两类内部排序待排序记录存放在内存,排序过程不需访问外存便能完成 ...
分类:
编程语言 时间:
2018-12-22 17:25:48
阅读次数:
258
计数排序 计数排序的实现主要是数据样本的特殊性(正整数,明确最大边界)和利用列表索引位置来记录值,索引值来统计个数 最后循环索引,根据值(个数)确定添加多少个 桶排序 桶排序实现思路和计数排序实现思路大体相同,计数排序是通过列表索引来把相同的数弄到一组,而桶排序则是确定一个范围来确定分组 代码实现思 ...
分类:
编程语言 时间:
2018-12-19 00:29:11
阅读次数:
216
解法一:计数排序:统计0,1,2 的个数 时间复杂度:O(n) 空间复杂度:O(k) k为元素的取值范围, 此题为O(1) 解法二:三路快排 时间复杂度:O(n) 空间复杂度:O(1) 只遍历了一遍 ...
分类:
编程语言 时间:
2018-12-15 22:30:31
阅读次数:
248