Leetcode-存在重复元素II

48.存在重复元素II

题目内容:

Leetcode-存在重复元素II

代码及思路:

class Solution {
public:
    bool containsNearbyDuplicate(vector<int>& nums, int k) {
        unordered_map<int,int> res;
        if(nums.size()==0||k<=0)
            return false;
        for(int i=0;i<nums.size();i++)
        {
            if(res.find(nums[i])==res.end()) //没有找到某值,则在哈希表中插入
                res.insert({nums[i],i});
            else  //若在哈希表中有找到相同值,则对index进行对比
            {
                if(i-res[nums[i]]<=k)
                    return true;
                else
                    res[nums[i]]=i; //若不满足则更新该值的index
            }
        }
        return false;
    }
};