首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >整数桶排序

整数桶排序
EN

Stack Overflow用户
提问于 2010-03-20 09:16:32
回答 2查看 3.7K关注 0票数 2

有人能帮我解决整数的桶排序算法吗?人们经常错误地说他们有这个算法,但实际上有一个计数排序!也许它的工作方式类似,但它是不同的。

我希望你能帮我找到正确的方法,因为我现在不知道(科门的书和维基百科没有那么大的帮助)。

提前感谢你所有的回应。

EN

回答 2

Stack Overflow用户

发布于 2010-03-20 09:28:34

Bucket sort can be seen as a generalization of counting sort; in fact, if each bucket has size 1 then bucket sort degenerates to counting sort.

票数 4
EN

Stack Overflow用户

发布于 2010-03-20 14:10:03

计数排序只适用于整数,而桶排序可以处理任何具有值的内容,而且,最后一个循环也有一点不同。

计数排序保持了一个额外的ints数组,它基本上是计算某个数字中有多少个,然后当它在最后一个循环中遍历附加数组时,再次创建这个数字,我的意思是--以面向对象的方式来看待它,它不是同一个对象,而是一个值相同的新对象。

那我们就有桶式的了。桶排序遍历数组,但它不只是在数组中的相关位置执行++,而是将项插入到某种类型的列表中(我喜欢使用队列,这样就可以实现稳定排序)。然后,在最后一个循环中,该算法遍历整个附加数组,并将每个桶中的元素排到数组中。那样的话,它就是同一个物体。

如果您正在排序任何内容,并且您知道数字的范围比nlogn小,那么使用计数排序(如果它是整数)和桶排序(如果对象有一些额外的数据)。当然,可以对整数使用桶排序,但计数排序占用的空间要小得多。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2482488

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档