题目:
给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使得 nums [i] = nums [j],并且 i 和 j 的差的 绝对值 至多为 k。
思路:
使用哈希就很简单了。
程序:
class Solution:
def containsNearbyDuplicate(self, nums: List[int], k: int) -> bool:
length = len(nums)
if length <= 0:
return False
if length == 1:
return False
my_hashMap = {}
for index in range(length):
if nums[index] in my_hashMap and index - my_hashMap[nums[index]] <= k:
return True
my_hashMap[nums[index]] = index
return False