First() 与 Last() 在 SortedDictionary 上的性能

标签 performance linq .net-3.5 sorteddictionary

我正在使用 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/

相关文章:

java - 优化 ResultSet 获取性能(Apache Spring、MySQL)

c# - 不必要的大括号会降低性能吗?

c# - 如何在 .net 3.5 trackbar 中标记最小、最大、中心刻度?

performance - Case 与 If Else If : Which is more efficient?

php - 提高MySQL查询性能——可能的索引问题

c# - 处理列表和 List.Take()

c# - 使用 System.Xml.XmlDocument 时是否可以从 System.Xml.XmlNode 获取行号/位置?

windows - 如何使用 WiX Burn 在 Windows 8 和 Windows Server 2012 上安装 .NET Framework 3.5?

.net - .Net4链接到EF的较早加载;也许像DataLoadOptions

c# - LINQ 右连接和左连接