219. Contains Duplicate II
這一題和 2 Sum 的原理有點像,我們需要用到 Table 來記憶元素出現的位置,不過這個題目只需要記憶著每個字元最後出現的位置即可。
class Solution:
def containsNearbyDuplicate(self, nums: List[int], k: int) -> bool:
table = {}
for i in range(len(nums)):
num = nums[i]
if num in table:
if abs(i - table[num]) <= k:
return True
table[num] = i
return False