217。数据中是否有重复元素(哈希表/set简法)
给定一个整数数组,判断是否存在重复元素。
如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。
示例 1:
输入: [1,2,3,1]
输出: true
解法1:哈希表
class Solution:
def containsNearbyDuplicate(self, nums: List[int], k: int) -> bool:
res = {}
for index, num in enumerate(nums):
if num in res and index-res[num] <=k:
return True
res[num] = index
return False
解法2:set
class Solution:
def containsNearbyDuplicate(self, nums: List[int], k: int) -> bool:
return len(nums) == len(set(nums))