我有一个实现 IScriptItem 的接口(interface) IComparable<IQueueItem>
在我看来,拥有 IComparable 项目似乎足以对任何东西进行排序。但我能找到的只是字典、哈希表和排序列表,它们实际上是排序树。

我正在寻找的是一个带有 IComparables 的排序通用列表。
我找错地方了吗?

最佳答案

没有任何内置的东西。你有一些选择:

  • 使用带有虚拟 TValue 的 SortedList。
  • 使用列表或数组,并在必要时调用 List.Sort() 或 Array.Sort()。
  • 自己写。
  • 使用第三方库

  • 对于这种特殊情况,请查看 Wintellect PowerCollections OrderedBag 类,该类在内部使用红黑树。其他好的免费数据结构库包括 NGenerics 和 C5。

    关于c# - SortedList 只需要 IComparable<T>,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1100615/

    10-10 18:25
    查看更多