存在重复

给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使 nums [i] = nums [j],并且 i 和 j 的绝对差值最大为 k。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Solution {
func containsNearbyDuplicate(_ nums: [Int], _ k: Int) -> Bool {
var set = Set<Int>()
for i in 0..<nums.count {
if i > k {
set.remove(nums[i-k-1])
}
let (result,_) = set.insert(nums[i])
if !result {
return true
}

}
return false
}
}