137.补充std::unordered_map
leetcode137题,遇到了实现LRU的管理缓存的题,现在来总结回顾一下关于unordered_map那些事儿~
c++11版本
定义在头文件 #include
是模板类,有自己的空间配置器,分配空间 std::pair
具体:
template<
class Key, //搜索的键值
class T, //value
class Hash = std::hash<Key>, //底层
class KeyEqual = std::equal_to<Key>, //key的比较
class Allocator = std::allocator< std::pair<const Key, T> > //空间的分配
> class unordered_map;
无序map是一个关系容器,包含了key-value对,键key唯一,对变量的查询,插入,删除有着O(1)常数时间。key在里面是无序的。底层是哈希。
- 迭代器不会失效的场景:所有仅读的操作,swap,std::swap。
- 成员函数集
begin
end
empty
size 已有的数量
max_size 可容纳最大的数量
clear 清除内容们
insert 插入节点或变量(key/pair)
erase
swap
rehash
reserve
还没有评论,来说两句吧...