【Leetcode】【Python】219. Contains Duplicate II

问题描述:

给定整数数组和整数k,找出数组中是否有两个不同的索引i和j,使得nums [i] = nums [j],并且i和j之间的绝对差值最多为k。


Paste_Image.png

代码示例:利用python中的字典

class Solution(object):
    def containsNearbyDuplicate(self, nums, k):
        """
        :type nums: List[int]
        :type k: int
        :rtype: bool
        """

        dd = {}
        sub = []
        for index,value in enumerate(nums):
            if value in dd:
                i = index
                j = dd[value]
                dd[value] = index
                sub.append(abs(i - j))
            else :
                dd[value] = index
        for i in sub :
            if i <= k :return True
        return False

你可能感兴趣的:(【Leetcode】【Python】219. Contains Duplicate II)