小编典典

.Net中的优先队列

all

我正在寻找优先级队列或堆数据结构的 .NET 实现

优先队列是比简单排序提供更多灵活性的数据结构,因为它们允许新元素以任意间隔进入系统。将新作业插入优先级队列比在每次到达时重新排序所有内容更具成本效益。

基本优先级队列支持三个主要操作:

  • 插入(Q,x)。给定一个带有键 k 的项目 x,将其插入优先级队列 Q。
  • 查找最小值 (Q)。返回指向其键值小于优先级队列 Q 中任何其他键的项的指针。
  • 删除-最小值(Q)。从优先级队列 Q 中移除 key 最小的 item

除非我找错了地方,否则框架中没有一个。有人知道一个好的,还是我应该自己推出?


阅读 59

收藏
2022-05-30

共1个答案

小编典典

我喜欢使用PowerCollectionsOrderedBag中的和OrderedSet类作为优先级队列。

2022-05-30