在Ruby的标准库中是否有优先级队列数据结构的实现?

fbcarpbf  于 9个月前  发布在  Ruby
关注(0)|答案(5)|浏览(106)

Ruby的标准库有优先级队列实现吗?

6ie5vjzr

6ie5vjzr2#

刚刚发布了一个ruby扩展(用C++)实现优先级队列,它比基于ruby的实现快了一个数量级。参见https://rubygems.org/gems/priority_queue_cxx

fdbelqdn

fdbelqdn3#

还有https://rubygems.org/gems/PriorityQueue,它仍然工作在1.9,尽管它从2005年起就没有改变。
从我的尝试来看,它工作得很好,有一个基准测试,并且有很好的文档记录。我可能不会说算法的PriorityQueue和Heap(它似乎不允许轻松更改给定值的键)。

xbp102n0

xbp102n04#

如果你感兴趣的话,RubyGems中有一个skewheap实现。

vh0rcniy

vh0rcniy5#

有一个长期存在的rubygem rbtree提供了这种类型的功能。它是Red-Black Tree的一个实现。
此外,还有一个纯ruby实现rbtree-pure

相关问题