class Solution {
public boolean containsNearbyDuplicate(int[] nums, int k) {
Map<Integer,Integer> map = new HashMap<Integer, Integer>();
int size = nums.length;
for(int i=0;i<size;++i){
if(map.containsKey(nums[i])){
int left = map.get(nums[i]);
if(i-left <= k){
return true;
}else{
map.remove(nums[i]);
map.put(nums[i], i);
}
}else{
map.put(nums[i], i);
}
}
return false;
}
}
public boolean containsNearbyDuplicate(int[] nums, int k) {
Map<Integer,Integer> map = new HashMap<Integer, Integer>();
int size = nums.length;
for(int i=0;i<size;++i){
if(map.containsKey(nums[i])){
int left = map.get(nums[i]);
if(i-left <= k){
return true;
}else{
map.remove(nums[i]);
map.put(nums[i], i);
}
}else{
map.put(nums[i], i);
}
}
return false;
}
}