Leetcode刷题:
有一些查找的题目,如单词频率统计,移除重复节点等等题目。
总结来说就是,如果你现在需要干的事和前面的数据有关的话,最容易想到的方法就是,一次从头遍历,查找判断,这样的话,时间开销会很大。
但是可以选择使用哈希表,哈希表比其他容器访问速度要快很多,虽然空间消耗大,但也是值得的。
Map:
1.声明:
map
2.插入
m.insert(pair
m.insert(make_pair(A, B));
m.insert(map
m[A] = B;
3.查找和统计
(1)查找
find(key); //查找key是否存在,若存在,返回该键的元素的迭代器;若不存在,返回mp.end();
map::iterator pos = mp.find(3); if (pos != m.end()) { cout << "找到了元素 key = " << (*pos).first << " value = " << (*pos).second << endl; } else { cout << "未找到元素" << endl; }
-
count(key); //统计key的元素个数



