桶排序、计数排序、基数排序

这三种排序算法不是基于比较的排序。时间复杂度O(N),额外空间复杂度O(N),稳定的

基于桶,一种数据出现的频率,一个萝卜一个坑,先扔入桶中,在按照桶的大小倒出元素。

非基于比较的排序

n个数,准备n+1个桶。  最小值a和最大值b,最小值放在a号桶中,最大值放在b桶中。每个桶的范围(b-a)/(n+1)。

相邻两个数来自同一个桶或相邻的桶。两个数的最大差值,一定来自不相同的桶。前一个桶的最大值,后一个的最小值。

每一个桶都有

boolean 桶中是否有元素

min 桶中最小

max 桶中最大

前一个非空桶的最大值 减去自己的最小值。

一定不来自同一个桶。

猜你喜欢

转载自www.cnblogs.com/bowenqianngzhibushiwo/p/11620746.html