Tag: sorteddictionary

何时通过SortedDictionary <TKey,TValue>使用SortedList <TKey,TValue>?

这似乎是这个问题的重复,它询问“ SortedList和SortedDictionary有什么区别?” 不幸的是,答案只不过是引用MSDN文档(明确指出两者之间存在性能和内存使用差异),但实际上并没有回答这个问题。 事实上(所以这个问题没有得到相同的答案),根据MSDN: SortedList<TKey, TValue>generics类是一个O(log n)检索的二叉search树,其中n是字典中元素的数量。 在这里,它类似于SortedDictionary<TKey, TValue>generics类。 这两个类有相似的对象模型,都有O(log n)检索。 这两个类别在内存使用和插入和删除速度方面存在差异: SortedList<TKey, TValue>使用的内存less于SortedDictionary<TKey, TValue> 。 SortedDictionary<TKey, TValue>对未sorting的数据有更快的插入和删除操作,O(log n)与SortedList<TKey, TValue> O(n)相对。 如果列表从已sorting的数据一次全部填充,则SortedList<TKey, TValue>比SortedDictionary<TKey, TValue>快。 所以,显然这表明SortedList<TKey, TValue>是更好的select, 除非您需要更快地插入和删除未sorting数据的操作。 问题仍然存在,鉴于上面的信息是什么使用SortedDictionary<TKey, TValue>的实际(真实世界,商业案例等)原因? 根据性能信息,这意味着根本不需要有SortedDictionary<TKey, TValue> 。

SortedList <>,SortedDictionary <>和Dictionary <>

我发现SortedList<TKey, TValue> SortedDictionary<TKey, TValue>和Dictionary<TKey, TValue>实现相同的接口。 什么时候应该selectSortedList和SortedDictionary over Dictionary ? SortedList和SortedDictionary在应用程序方面有什么区别?

SortedList和SortedDictionary有什么区别?

SortedList<TKey,TValue>和SortedDictionary<TKey,TValue>之间是否有实际的区别? 有什么情况下你会专门使用一个而不是另一个?