219. Contains Duplicate II

在哈希表的基础上扫描判断,代码如下:

class Solution(object):
    def containsNearbyDuplicate(self, nums, k):
        """
        :type nums: List[int]
        :type k: int
        :rtype: bool
        """
        if len(nums) == 0 or len(nums) == 1:
            return False
        if k == 0:
            return False
        dic = {}
        for n in nums:
            if n not in dic:
                dic[n] = 1
            else:
                dic[n] += 1
        visit = [0 for i in range(len(nums))]
        for i in range(len(nums)):
            if dic[nums[i]] > 1:
                print "here"
                visit[i] = 1
                index1 = i
                for j in range(i+1, len(nums)):
                    if nums[j] == nums[i]:
                        if j - i <= k:
                            return True
        return False
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容