一、原理
桶排序是计数排序的升级版。它利用了函数的映射关系,高效的关键在于映射函数的确定。
假设输入数据服从均匀分布,将数据分到有限数量的桶里,每个桶再分别排序
(1)人为设置一个BucketSize,作为每个桶所能放置多少个不同数值
(2)遍历输入数据,并且把数据一个一个放到对应的桶里去
(3)对每个不是空的桶进行排序,可以使用其它排序方法,也可以递归使用桶排序
(4)从不是空的桶里把排好序的数据拼接起来
最佳情况:T(n) = O(n + k) 最差情况 T(n) = O(n + k) 平均情况 T(n) = O()
二、代码实现

网友评论