我正在使用 SortedDictionaries 来模拟队列(由于我有一些要求),并且我在排序字典上调用 Last() 以获取我需要出列的项目。
我只是想知道使用自定义比较器并调用 First() 或继续调用 Last() 的性能。
反编译 .NET 3.5 程序集后,我发现 SortedDictionary 类确实有一个 Count 属性,所以我猜框架只在调用 First 时返回位置 0 处的项,当调用时返回位置 [count-1] 处的项最后被称为,我说得对吗?
最佳答案
不。
由于 SortedDictionary
没有实现 IList<TValue>
(它有一个 this[int]
索引器),所以 Last()
除了遍历整个过程别无选择。
关于First() 与 Last() 在 SortedDictionary 上的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12430571/