LeetCode #219. Contains Duplicate II
题目
解题方法
用一个字典dic存放已经访问过的数并记录它的index,如果遇到一个重复的数且它的index和存放在字典中的index之差小于k,返回True,否则更新字典中的index。
时间复杂度:O(n)
空间复杂度:O(n)
代码
class Solution:
def containsNearbyDuplicate(self, nums: List[int], k: int) -> bool:
dic = {}
for i in range(len(nums)):
if nums[i] in dic and i - dic[nums[i]] <= k:
return True
else:
dic[nums[i]] = i
return False

浙公网安备 33010602011771号