1.题目详情
给定一个整数数组,判断是否存在重复元素。
如果存在一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。
2.解题思路
怎么判断存在重复元素?
3.代码实现
1)利用set()方法,判断去掉重复后的列表是否与原列表长度相同
class Solution:
def containsDuplicate(self, nums: List[int]) -> bool:
return len(nums) != len(set(nums)) #set集合去重,如果长度相等,代表无重复,反之亦然。
2)先排序,排序后看后一个数字是否与前一个数字相等,若相等,存在重复元素
class Solution:
def containsDuplicate(self, nums: List[int]) -> bool:
# 先对数组排序
nums.sort()
# 遍历数组,比较前后元素值
for i in range(len(nums)-1):
if nums[i] == nums[i+1]:
return True
return False
4.知识点
掌握查询存在重复元素的方法