当前位置: 首页 > news >正文

【LeetCode】219.存在重复元素II

1. 题目

在这里插入图片描述

2. 分析

3. 代码

class Solution:def containsNearbyDuplicate(self, nums: List[int], k: int) -> bool:num2index = defaultdict(list)for idx,num in enumerate(nums):num2index[num].append(idx)for key, val in num2index.items():if len(val) >= 2:for i in range(len(val)-1):nex = val[i+1]if abs(nex - val[i]) <= k:return Truereturn False

上面这版代码空间复杂度还不是最优,原因是存储了非窗口内的元素。最优解的做法是:在滑动窗口的过程中动态的维护一个哈希表,哈希表中存储的内容是某个元素上一次出现的下标。 我记得滑动窗口类的题目好多都是这种做法。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • STM32卡死、跑飞如何调试确定问题
  • CMD运行指令
  • 鸿蒙系统开发【ASN.1密文转换】安全
  • 线程池工具类 Executors源代码详解
  • 基于Redis实现全局唯一id
  • 小试牛刀-Telebot区块链游戏机器人(TS升级)
  • 【Python】数据类型之详讲字符串(下)
  • 全球轻型汽车安全气囊面料市场规划预测:未来六年CAGR为4.3%
  • 1. 什么是操作系统
  • 24年税务师考试补报名即将开始啦
  • ComfyUI插件:ComfyUI layer style 节点(三)
  • unity中实现流光效果——世界空间下
  • python学习之旅(基础篇看这篇足够了!!!)
  • 文件解析漏洞
  • JVM—垃圾收集算法和HotSpot算法实现细节
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • 10个确保微服务与容器安全的最佳实践
  • C++入门教程(10):for 语句
  • CNN 在图像分割中的简史:从 R-CNN 到 Mask R-CNN
  • Hibernate【inverse和cascade属性】知识要点
  • niucms就是以城市为分割单位,在上面 小区/乡村/同城论坛+58+团购
  • underscore源码剖析之整体架构
  • vue-cli在webpack的配置文件探究
  • 聊聊hikari连接池的leakDetectionThreshold
  • 前端之Sass/Scss实战笔记
  • 数组的操作
  • 微信小程序:实现悬浮返回和分享按钮
  • 源码之下无秘密 ── 做最好的 Netty 源码分析教程
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • # 数据结构
  • #LLM入门|Prompt#1.8_聊天机器人_Chatbot
  • #QT项目实战(天气预报)
  • (2021|NIPS,扩散,无条件分数估计,条件分数估计)无分类器引导扩散
  • (层次遍历)104. 二叉树的最大深度
  • (初研) Sentence-embedding fine-tune notebook
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (二十五)admin-boot项目之集成消息队列Rabbitmq
  • (九)One-Wire总线-DS18B20
  • (十六)一篇文章学会Java的常用API
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • (轉貼) VS2005 快捷键 (初級) (.NET) (Visual Studio)
  • *算法训练(leetcode)第四十五天 | 101. 孤岛的总面积、102. 沉没孤岛、103. 水流问题、104. 建造最大岛屿
  • .NET Framework 服务实现监控可观测性最佳实践
  • .Net Remoting(分离服务程序实现) - Part.3
  • .net 使用ajax控件后如何调用前端脚本
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景
  • .NET+WPF 桌面快速启动工具 GeekDesk
  • /usr/bin/python: can't decompress data; zlib not available 的异常处理
  • @PreAuthorize注解
  • @Valid和@NotNull字段校验使用
  • [AX]AX2012开发新特性-禁止表或者表字段
  • [BZOJ 3680]吊打XXX(模拟退火)
  • [C#] 基于 Token 的鉴权与签名机制详解 接口对接鉴权 token、sign(a=1b=2c=3d=4)、Base64、参数加密、MD5