第 133 课
unordered_map
🔵 基础 约 7 分钟
一句话理解
unordered_map 是哈希表映射,平均 O(1)。
为什么要学
只要不需要有序,查找常常更快。
讲解
接口和 map 很像,但不排序。最坏可能被卡成 O(n),竞赛中有时要自定义哈希。
键需要能哈希。自定义 struct 作键比较麻烦。
例子
unordered_map<int,int> mp;
mp[10] = 1;
cout << mp[10];
输出:
1
把 10 映射到 1。内部无序。
常见错误
- 需要按键输出有序却用了 unordered_map。
- 被针对的哈希冲突数据卡 TLE。
练习 做完再看下一课
unordered_map 保证按键从小到大遍历。
无序。
在线练习 C++ 在浏览器里编译,代码不会上传 已通过
Ctrl / ⌘ + Enter 运行 · Tab 缩进
隐藏测试点只是界面不展示数据。题目 JSON 会下发到浏览器,可在开发者工具里看到,只适合自学,不是正式比赛评测。
进度保存在本机浏览器里。
左右方向键也可翻课