217. Contains Duplicate

Given an array of integers, find if the array contains any duplicates.

Your function should return true if any value appears at least twice in the array, and it should return false if every element is distinct.

Example 1:

Input: [1,2,3,1]

Output: true

Example 2:

Input: [1,2,3,4]

Output: false

Example 3:

Input: [1,1,1,3,3,4,3,2,4,2]

Output: true

思路: 1.先排序 2.看最大值与最小值的差与列表长度进行比较

代码有问题

class Solution(object):
    def containsDuplicate(self, nums):
        """
        :type nums: List[int]
        :rtype: bool
        """
        length = len(nums)
        if length <= 1:
            return False
        nums.sort()
        print(nums)
        minS = min(nums)
        maxS = max(nums)
        if (maxS-minS) < length-1:
            return True
        else:
            return False

if __name__ == "__main__":
    nums = [1]
    b = Solution().containsDuplicate(nums)
    print(b)

网上思路:https://blog.csdn.net/coder_orz/article/details/51407597

class Solution(object):
    def containsDuplicate(self, nums):
        """
        :type nums: List[int]
        :rtype: bool
        """
        map = {}
        for i in nums:
            print(i)
            if i in map:
                #print(map([i]))
                return True
            map[i] = True
        return False

if __name__ == "__main__":
    nums = [1,1,1,3,3,4,3,2,4,2]
    b = Solution().containsDuplicate(nums)
    print(b)

打赏一个呗

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦