C++中的地图数据结构是什么

What is the map data structure in C++

本文关键字:数据结构 是什么 地图 C++      更新时间:2023-10-16

C++中下面一行代码使用的数据结构是什么?

map <char, int> dict;

这是一个哈希表吗?

std::unordered_map使用哈希来存储其对象。

该标准没有对std::map强加任何特定的实现。它只提供了所需的操作及其复杂性。这些因素导致了实际的实现选择,通常是一棵红黑树。

列出std::map要求的章节是C++11中的23.2.4 Associative Containers

它通常是用自平衡BST实现的。实现实际上是特定于编译器的。

std::map<char, int> dict;

char是密钥,而int是相应的值。

它使用红黑树按顺序组织键。

这就是为什么您可以按升序迭代它,并且键对象必须具有运算符<过载。