码迷,mamicode.com
首页 > 编程语言 > 详细

桶排序

时间:2019-08-09 23:50:01      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:线性时间   列表   稳定性   nbsp   简单   桶排序   方式   遍历   时间   

排序算法中最快、最简单的排序算法,及其耗费内存。

原理

把同类元素放在相同的桶里,每个桶子再个别排序(有可能再使用别的排序算法或是以递回方式继续使用桶排序进行排序),桶本身是有序的!

1、确定桶的数量;

2、遍历列表,把元素放到对应的桶里;

3、重复2;

4、把排序好的元素放回原列表,知道排序完成;

分析

平均:T(n)=o(n)

当要被排序的数组内的数值是均匀分配的时候,桶排序使用线性时间O(n)。

空间复杂度为O(n+m)。

桶排序的稳定性依赖于桶内排序。如果我们使用了快排,显然,算法是不稳定的。

代码

 

桶排序

标签:线性时间   列表   稳定性   nbsp   简单   桶排序   方式   遍历   时间   

原文地址:https://www.cnblogs.com/pacino12134/p/11329751.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!