我正在寻找一种数据结构,它提供:
- 在前面添加一个元素
- 交换两个元素
- 移除元素
- 当我添加一个元素(不是在最后一个位置)时,其他元素应该向后滑动(比如在队列中)
- 访问每个元素
- 通用会很好,但不是必需的
我在 MSDN 上找到的数据结构不能满足我的要求
List
并且LinkedList
不提供交换方法- 我可以用
ArrayList
. HashTable
不提供订单Queue
并且Stack
不提供交换,随机访问,...
我可以编写自己的数据结构,但我不想重新发明轮子,因为 .NET 库非常庞大。
编辑:
我需要一个数据结构来提供类似的东西,比如进程优先级调度程序。第一个条目的优先级最高,最后一个条目的优先级最低。有时我必须更改元素的优先级(交换)或完全删除元素(删除)。我最近添加的元素应该具有最高优先级(这就是我将它添加到前面位置的原因)