排序算法——桶排序/基数排序/计数排序

桶排序 是计数排序的升级版。它利用了函数的映射关系,高效与否的关键就在于这个映射函数的确定。
桶排序 (Bucket sort)的工作的原理:

假设输入数据服从均匀分布,将数据分到有限数量的桶里,每个桶再分别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排序

桶排序最好情况下使用线性时间O(n),桶排序的时间复杂度,取决与对各个桶之间数据进行排序的时间复杂度,因为其它部分的时间复杂度都为O(n)。很显然,桶划分的越小,各个桶之间的数据越少,排序所用的时间也会越少。但相应的空间消耗就会增大。

最佳情况:T(n) = O(n+k)

最差情况:T(n) = O(n+k)

平均情况:T(n) = O(n2)

桶排序重点:

基数排序

计数排序

164. 最大间距 - 力扣(LeetCode)

相关推荐
武帝为此38 分钟前
【B树与B+树详解】
数据结构·b树
南莺莺41 分钟前
邻接矩阵的基本操作
数据结构·算法··邻接矩阵
观望过往1 小时前
【Java数据结构】队列详解与经典 OJ 题目实战
java·数据结构
aramae2 小时前
详细分析平衡树--红黑树(万字长文/图文详解)
开发语言·数据结构·c++·笔记·算法
CHEN5_022 小时前
【leetcode100】和为k的子数组(两种解法)
java·数据结构·算法
guguhaohao4 小时前
list,咕咕咕!
数据结构·c++·list
Code小翊5 小时前
希尔排序基础理解
数据结构·算法·排序算法
Pluchon5 小时前
硅基计划4.0 算法 二叉树深搜(DFS)
java·数据结构·算法·leetcode·深度优先·剪枝
Yupureki6 小时前
从零开始的C++学习生活 9:stack_queue的入门使用和模板进阶
c语言·数据结构·c++·学习·visual studio
小年糕是糕手6 小时前
【数据结构】单链表“0”基础知识讲解 + 实战演练
c语言·开发语言·数据结构·c++·学习·算法·链表