数组——4、存在重复

给定一个整数数组,判断是否存在重复元素。如果有任何值在数组中出现至少两次,函数返回true。如果数组中每个元素都不相同,则返回false。
示例1:

输入: [1, 2, 3, 1]
输出: true

示例2:

输入: [1, 2, 3, 4]
输出:false

方法1:排序,和前一个比较,若重复,则返回True,否则False。

class Solution:
    def containsDuplicate(self, nums):
    	new_nums = sorted(nums)
    	for i in range(1, len(new_nums)):
    	    if new_nums[i] == new_nums[i-1]:
    	    	return True
    	    return False

方法2:利用集合的无序不重复特点

class Solution:
    def containsDuplicate(self, nums):
    	nset = set(nums)
    	if len(nset) < len(nums):
    	    return True
    	return False

方法3:优化的方法2

class Solution:
    def containsDuplicate(self, nums):
    	a = len(nums)
    	b = len(set(nums))
    	return True if a > b else False
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值