【发布时间】:2018-12-24 13:03:50
【问题描述】:
我需要 Python 3 中的“优先级堆栈”数据结构(如优先级队列,但更像 LIFE 之类的堆栈)。
我知道queue.PriorityQueue,但找不到像queue.PriorityStack 这样的东西。
【问题讨论】:
-
优先级堆栈到底能做什么?你试过写一个吗?
-
@PatrickHaugh 我认为,它应该像堆栈,但较高优先级的条目“浮动”在较低优先级的上方
-
如果“优先级”决定了弹出项目的顺序,那么它与优先级队列有什么不同?
-
@neerad29 对于相同优先级的条目,它应该是 LIFO 而不是 FIFO。这就是差异的本质
-
感谢您的澄清。您可以将其实现为堆栈的优先级队列。也就是说,优先级队列中的每个元素都是具有相同优先级的项目的堆栈。
标签: python python-3.x stack priority-queue