使用map
map是STL的一个关联容器,它提供一对一的hash。
- 第一个可以称为关键字(key),每个关键字只能在map中出现一次;
- 第二个可能称为该关键字的值(value);
注意事项:
使用map要包含头文件map
map是模板类 定义示范 map<type , type > name;
赋值 name[key]=value.
作用:可以牺牲空间复杂度换来更优的时间复杂度
比如需要组合的比较数组中的两个数据时,用哈希表可以将遍历过得数据存下来节省遍历搜索的时间
例题如下 给定一个数组nums和target 返回两个数的和为target 的下标
解法:遍历数组,将nums的值作为key,如果哈希表中没有target-nums[i]就将nums[i]存入哈希表否则返回这两个下标。
这样一次遍历就能解决问题。