python 219 Contains Duplicate II 存在重复元素 II python 最简代码

版权声明:作者:onlychristmas 欢迎转载,与人分享是进步的源泉! 转载请保留原博客地址:https://blog.csdn.net/huhehaotechangsha https://blog.csdn.net/huhehaotechangsha/article/details/88243453
所有Leetcode题目不定期汇总在 Github, 欢迎大家批评指正,讨论交流。
'''

Given an array of integers and an integer k, find out whether there are two distinct indices i and j in the array such that nums[i] = nums[j] and the absolute difference between i and j is at most k.

Example 1:

Input: nums = [1,2,3,1], k = 3
Output: true
Example 2:

Input: nums = [1,0,1,1], k = 1
Output: true
Example 3:

Input: nums = [1,2,3,1,2,3], k = 2
Output: false

'''


class Solution:
    def containsNearbyDuplicate(self, nums: List[int], k: int) -> bool:
        # Approach one
        dic = {}
        for i , n in enumerate(nums):
            if n not in dic:
                dic[n] = i
            elif i - dic.get(n) <= k:
                return True
            else:
                dic[n] = i
        return False

所有Leetcode题目不定期汇总在 Github, 欢迎大家批评指正,讨论交流。

猜你喜欢

转载自blog.csdn.net/huhehaotechangsha/article/details/88243453