Idea
使用哈希表来辅助存储,key存储nums数组中的值nums[i],value存储该值在nums数组的下标 i,然后遍历nums数组,未出现的重复的存储在hashmap中
AC Code
class Solution {
public:
bool containsNearbyDuplicate(vector<int>& nums, int k) {
unordered_map<int,int> hashMap;
for(int i = 0; i < nums.size(); i++){
if(hashMap.find(nums[i]) != hashMap.end() && abs(hashMap[nums[i]] - i) <= k) return true;
hashMap[nums[i]] = i;
}
return false;
}
};