LeetCode刷题笔记第217题:存在重复元素

LeetCode刷题笔记第217题:存在重复元素

题目:

给你一个整数数组nums。如果任一值在数组中出现至少两次,返回 true;如果数组中每个元素互不相同,返回 false。

想法:

要判断数组中是否存在重复的元素,创建一个字典,遍历数组中的元素,如果字典中不存在该元素则存进字典,如果该元素存在则直接返回true,当遍历完成数组后字典中不存在重复的元素则返回false

复制代码
class Solution:
    def containsDuplicate(self, nums: List[int]) -> bool:
        nums_dict = {}
        for i in nums:
            if i not in nums_dict:
                nums_dict[i] = 1
            else:
                return True
        return False

因为要遍历整个数组,所以时间复杂度O(n)。

因为创建了一个字典存放数组中的元素,因此空间复杂度O(n)。

相关推荐
ZNing_123 分钟前
SQL基础操作指南:约束、表设计与复杂查询
数据库·笔记·sql·学习
满分观察网友z1 小时前
从 O(N) 到 O((logN)²) 的奇妙旅程:我如何给资源计数器提速99%(222. 完全二叉树的节点个数)
后端·算法
Flash.kkl2 小时前
笔试强训——第一周
算法
EmpressBoost2 小时前
ElasticSearch学习笔记
笔记·学习·elasticsearch
点云SLAM3 小时前
OpenCV特征点提取算法orb、surf、sift对比
人工智能·算法·计算机视觉·sift算法·orb算法
笑衬人心。4 小时前
ThreadLocal 在 Spring 与数据库交互中的应用笔记
数据库·笔记·spring
椎名ひる5 小时前
74、搜索二维矩阵
算法·leetcode·矩阵
费费开心一点6 小时前
Java程序设计学习笔记
java·笔记·学习
智驱力人工智能7 小时前
智慧后厨检测算法构建智能厨房防护网
人工智能·算法·口罩识别·行为识别·食品安全·高温预警·手套识别
haidizym9 小时前
(笔记+作业)第五期书生大模型实战营---L2G2000 GraphGen:训练数据合成实践
笔记·大模型·知识图谱