Skip to content

Latest commit

 

History

History
84 lines (63 loc) · 1.46 KB

File metadata and controls

84 lines (63 loc) · 1.46 KB

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

利用set可以这么简单。。。。

class Solution(object):
    def containsDuplicate(self, nums):
        """
        :type nums: List[int]
        :rtype: bool
        """
        return len(nums) != len(set(nums))

思路 2

或者先 sort 也可以

class Solution(object):
    def containsDuplicate(self, nums):
        """
        :type nums: List[int]
        :rtype: bool
        """
        nums.sort()
        for i in range(len(nums)-1):
            if nums[i] == nums[i+1]:
                return True
        return False

思路 3

或是字典存储

class Solution(object):
    def containsDuplicate(self, nums):
        """
        :type nums: List[int]
        :rtype: bool
        """
        res = {}
        for i in range(len(nums)):
            if nums[i] in res:
                return True
            else:
                res[nums[i]] = 1
        return False