【发布时间】:2013-03-01 05:20:34
【问题描述】:
考虑到我需要一个已排序的字典,所以当我使用 SortedDictionary<> 而不是 Dictionary<> 时,性能是否会受到影响,所以如果我使用字典,我将不得不手动对其进行排序。哪个会更快?
SortedDictionary<> 或(Dictionary<> + 手动排序)。
【问题讨论】:
-
你使用什么类型的键和值,你执行什么操作?
-
当您使用Stopwatch 并对其进行测量时发生了什么?
-
如果你以前没有写过排序,我推荐第二个选项,这样你就会知道为什么第一个选项是正确的。如果您之前编写过排序,请使用第一个选项,直到您遇到可衡量的重要性能问题。
-
我最近在 A-star 实现中测试了用手动 MinHeap 替换 SortedDIctionary。我在长路径上的性能提高了大约 40%。
标签: c# optimization dictionary sorteddictionary