赞
踩
1.创建需要指定类型
unoredred_map<type1,type2> map;
2.insert
map.insert({value1,value2})
std::make_pair<type1,type2>(value1,value2)
3.查看是否存在
map.find(key)==map.end()
4.遍历
for(auto iter=map.begin();iter!=map.end();iter++)
cout<<iter->first<<" "<<iter->second;则先输出key再输出value
'''
- int main(){
- unordered_map<string,int> map;
- map.insert({"1",1});
- map.insert(std::make_pair("Scala",1));
- cout<<(map.find("1")==map.end())<<endl;
- cout<<(map.find("2")==map.end())<<endl;
-
- for(auto it=map.begin();it!=map.end();it++){
- cout<<it->first<<" "<<it->second<<endl;
- }
-
- return 0;
- }
'''
最简单的实现哈希表的方式就是整一个vector<Node<key,value>>
当插入一个新元素时,先将key序列化(hash),得到一个hash值,该hash值指明所在数组下标位置,接下来就是访问链表的问题了,首先遍历链表看key是否在链表中,如果在的话,将对应node的value替换,若不在,则用头插法,将新节点插入。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。