文章插图
桶排序时间复杂度:O(N+C),其中C=N*(logN-logM) 。桶排序是一个排序算法,工作的原理是将数组分到有限数量的桶子里,每个桶子再使用别的排序算法或以递归方式继续使用桶排序进行排序 。
文章插图
桶排序的平均时间复杂度为线性的O(N+C),其中C=N*(logN-logM) 。如果相对于同样的N,桶数量M越大,其效率越高,最好的时间复杂度达到O(N) 。当然桶排序的空间复杂度为O(N+M),如果输入数据非常庞大,而桶的数量也非常多,则空间代价无疑是昂贵的 。此外,桶排序是稳定的 。
文章插图
桶排序的方法
【桶排序时间复杂度桶排序时间复杂度是什么】桶排序算法要求,数据的长度必须完全一样,程序过程要产生长度相同的数据,其方法为:Data=http://www.ccschy.com/shenghuo/rand()/10000+10000 。
每次进行下一次的扫描顺序是按照上次扫描的结果来的,所以设计上提供相同的两个桶数据结构 。前一个保存每一次扫描的结果供下次调用,另外一个临时拷贝前一次扫描的结果提供给前一个调用 。
在桶排序算法的代码中,假设输入是含n个元素的数组A,且每个元素满足0≤ A[i]<1 。另外还需要一个辅助数组B[O..n-1]来存放链表实现的桶,并假设可以用某种机制来维护这些表 。
推荐阅读
- 玉簪花的花期开多长时间 玉簪什么时候开花
- 马桶气味大怎么解决
- 萝卜海蛎子包子蒸多久才会熟 萝卜丝海蛎子包子蒸多长时间
- 素包子要蒸多长时间能蒸熟 烫面素包子蒸多久才会熟
- 香菇放冷藏可以放多久 新鲜 香菇放冷藏的保存时间
- 生螃蟹冷藏放冰箱能放多久 生螃蟹冷藏放冰箱能放多久时间
- 大蒜放醋里可以放多久 大蒜放醋里可以放多久时间
- 煮好的玉米放冰箱可以放多久 熟玉米保存时间
- 圭表是根据影子的什么来记录时间的 圭表怎么记录时间的
- 新鲜排骨冷冻能放多久 新鲜排骨放在冷冻可以放多长时间