第一次做与map容器有关的练习,花了点时间学习了map的一些用法。
1、map是一个映射容器。
2、map当中有许多用法,例如count返回是否存在key对应的数据。
class Solution {
public:
bool containsNearbyDuplicate(vector<int>& nums, int k) {
unordered_map<int, int> nmap;
for(int i=0;i<nums.size();i++)
{
if(nmap.count(nums[i])==true)
{
if(i-nmap[nums[i]]<=k)
return true;
else
nmap[nums[i]]=i;
}
nmap.insert(pair<int,int>(nums[i],i));
}
return false;
}
};
此题主要是利用数组值作为key,保存对应的坐标,判断第二次的坐标是否满足要求。