我正在寻找优先级队列或堆数据 struct 的.NET实现
优先级队列是比简单排序更灵活的数据 struct ,因为它们允许新元素以任意间隔进入系统.将新作业(job)插入优先级队列比在每次到达时重新排序要划算得多.
基本优先级队列支持三个主要操作:
- 插入(Q,x).给定一个带有键k的项目x,将其插入优先级队列Q.
- 求最小值(Q).返回指向该项的指针
- 删除最小值(Q).从优先级队列Q中删除密钥最小的项
除非我找错了地方,否则框架中没有.有人知道一个好的,还是我应该自己滚?
我正在寻找优先级队列或堆数据 struct 的.NET实现
优先级队列是比简单排序更灵活的数据 struct ,因为它们允许新元素以任意间隔进入系统.将新作业(job)插入优先级队列比在每次到达时重新排序要划算得多.
基本优先级队列支持三个主要操作:
- 插入(Q,x).给定一个带有键k的项目x,将其插入优先级队列Q.
- 求最小值(Q).返回指向该项的指针
- 删除最小值(Q).从优先级队列Q中删除密钥最小的项
除非我找错了地方,否则框架中没有.有人知道一个好的,还是我应该自己滚?
我喜欢使用PowerCollections中的OrderedBag
和OrderedSet
类作为优先队列.