C++ STL中的unordered_map可类比于Python中的字典。其实现使用了哈希表,可以以O(1)的时间复杂度访问到对应元素,但缺点是有较高的额外空间复杂度。与之对应,STL中的map对应的数据结构是红黑树,红黑树内的数据时有序的,在红黑树上查找的时间复杂度是O(logN),相对于unordered_map的查询速度有所下降,但额外空间开销减小。
unordered_map常用函数
需要包含的文件
#include <unordered_map>
using namespace std;
声明一个unordered_map
在< >中需要指明两个变量类型,类比Python的字典,第一个是key的类型,第二个是key对应的value的类型
unordered_map<char, int> map;
插入键值对的方法,下面介绍两种方法
首先是使用[]的方法
map['A'] = 1;
在Python中,如果事先声明了一个字典,也可以用这种方法增加(key, value)对
## Python字典示例
dic = {} # 声明一个字典
dic['A&#