我无法找到合适的C#数据结构。我正在寻找PriorityList。它需要具有以下内容:
C#的SortedList看起来很有前途,但是它不能处理已经存在的优先级插入或者以给定优先级删除元素(在两种情况下都适当地移动列表)。
答案 0 :(得分:7)
如果您使用标准List<T>
,那么如果您使用priority == index.
答案 1 :(得分:0)
如果使用密钥优先的SortedDictionary<TKey, TValue>
怎么样?它并不完全符合您的所有要求,如果您希望优先级是唯一的,则不清楚。如果您不希望优先级是唯一的,LinkedList<T>
可能是您最好的选择。