最近遇到一道题(后一篇博客会说),不会用map和set的啊,只得去学一下,在这里总结。
map:map就是个hash表,不用你手打的hash表。
如果hash的东西很多,要求很高,最好还是别用map。
这与map的原理有关:据WYT口胡,map会先开一定空间,等到用完了,再开,谁也不知道多了它会有多慢,所以OI时遇到较大的hash还是得手调mo值。
头文件:
#include<map>定义:
map<type1, type2> a;type1是hash的类型,一般是数字。字符串。
type2是一个位置携带的类型。
插入、使用、修改:
a[type1] = type2;直接当做数组下标用是最方便的.
至于其它的表示法一般用不上。
删除:
a.erase(type1);其它:
a.clear(); //清空 a.empty(); //是否为空 a.size(); //返回a的元素个数是不是很简单。
set: