LeetCode 217 Contains Duplicate--python,java解法--set--简单
发布日期:2022-03-18 18:19:24 浏览次数:10 分类:技术文章

本文共 1348 字,大约阅读时间需要 4 分钟。

题目地址:


题目:

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

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

我的想法是先排序,再看是否有重复的。

Python3代码如下:

class Solution:    def containsDuplicate(self, nums: List[int]) -> bool:        if len(nums)<2:            return False        nums.sort()        for i in range(1,len(nums)):            if nums[i]==nums[i-1]:                return True        return False

结果如下:

Runtime: 52 ms, faster than 50.12% of Python3 online submissions for Contains Duplicate.Memory Usage: 16.4 MB, less than 82.20% of Python3 online submissions for Contains Duplicate.

看了别人的Solution后,我觉得也许用set更快:

class Solution:    def containsDuplicate(self, nums: List[int]) -> bool:        nums2=set(nums)        return  len(nums2)!=len(nums)

结果只用了44ms,快了11ms,但内存多占用了3M

Java代码如下:

class Solution {
public boolean containsDuplicate(int[] nums) {
Set
set = new HashSet<>(nums.length); for (int x: nums) {
set.add(x); } return set.size()!=nums.length; }}

耗时只有8ms,但是内存占用了44M。

转载地址:https://zhang0peter.blog.csdn.net/article/details/88140325 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:C语言注释的匹配的正则表达式
下一篇:最大乘积

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年03月10日 16时58分04秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

java 返回实体对象_java 封装返回结果实体类 返回结果以及错误信息 2019-04-21
java web 防止sql注入攻击_JavaWeb防注入知识点(一) 2019-04-21
java ssm 异常分类_SSM项目常见的异常与处理提示(一) 2019-04-21
java定义矩形类_Java定义矩形类 2019-04-21
java变量怎么变常量_Java的常量与变量是什么?怎么学习呀? 2019-04-21
java开发招聘试题_客户化开发招聘试题-Java开发.doc 2019-04-21
java jdk win10 1335_win10下安装java jdk,tomcat 2019-04-21
java list二分查找_java中的ArrayList和LinkedList的二分查找速度比 | 学步园 2019-04-21
php中的变量名称用什么表示,PHP变量,方法,类等名称中的有效字符是什么? 2019-04-21
pic32mx是什么cpu_PIC32MX单片机外设库使用(Ⅰ)- 系统时钟及I/O口基本设置 2019-04-21
用c 在mysql上存图片_C 批量保存图片进 mysql 利用MYSQL_BIND插入longblob 2019-04-21
mysql 1045 28000_mysql报关于用户密码1045(28000),几种处理方法 (zhuan) 2019-04-21
solr比mysql的优势_Solr与Elasticsearch的优缺点比较总结和归纳 2019-04-21
华为博士招聘上机考试题目_牛客网-华为-2020届校园招聘上机考试-3 2019-04-21
python中for可以做变量名吗_Python中使用动态变量名的方法 2019-04-21
mysql 日期转换天数_MySQL 日期操作 增减天数、时间转换、时间戳 2019-04-21
java对象去重复_JAVA中List对象去除重复值的方法 2019-04-21
java bss_[转] .bss段和.data段的区别 2019-04-21
java上传图片损坏_大神求助 上传图片后 图片损坏 2019-04-21
java socket唯一标识符_Java Socket编程之常识网络基础知识 2019-04-21