LeetCode Contains Duplicate
Problem
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:
1
2
Input: [1,2,3,1]
Output: true
Example 2:
1
2
Input: [1,2,3,4]
Output: false
Example 3:
1
2
Input: [1,1,1,3,3,4,3,2,4,2]
Output: true
即判断数据中是否有重复元素
Python3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# 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
class Solution:
def containsDuplicate(self, nums):
"""
:type nums: List[int]
:rtype: bool
"""
temp_dict = {}
for val in nums:
if val in temp_dict:
return True
temp_dict[val] = val
return False
def containsDuplicate_via_set(self, nums):
"""
:type nums: List[int]
:rtype: bool
"""
return len(nums) != len(set(nums))
分析
两种直接的办法,一是利用dict,判断key是否存在。另一种是利用set的特性直接转换成set判断长度是否一致。
本文由作者按照 CC BY 4.0 进行授权