这道题,要查找K+1范围内是否有重复元素,考虑使用滑动窗口+ 查找表进行解决。代码如下
class Solution {
public:
bool containsNearbyDuplicate(vector<int>& nums, int k) {
unordered_set<int> counter;
for(int i = 0;i < nums.size() ;i++){
if (counter.find(nums[i]) != counter.end())
return true;
else{
counter.insert(nums[i]);
}
if(counter.size() >= k+1){
counter.erase(nums[i-k]);
}
}
return false;
}
};