地图和字典的实施差异

时间:2011-04-21 08:38:55

标签: .net c++ data-structures

我知道地图或字典的使用位置有什么区别,但我想知道为什么.NET中的Dictionary<TKey, TValue>应该使用,我从已经阅读了here,这是一个链接列表,我知道std::map<K,T>(C ++)是一个红黑树。

为什么它们不是一样的,它们在性能方面是否存在差异(我知道C ++数据结构已经过优化)或者为什么.NET字典实际上是一个链接列表和C ++ std :: map然后是一个红黑树,据我所知,它是完全不同的数据结构,主要用于完全不同的目的。

也许这两件事情有不同的目的,也许我只是不知道。

有人可以澄清吗?

1 个答案:

答案 0 :(得分:3)

Dictionary<>hash table,类似于std::unordered_map<>

SortedDictionary<>是一棵红黑树,类似于std::map<>