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

【力扣-239. 滑动窗口最大值[特殊字符]】Python笔记

单调队列与滑动窗口算法详解

滑动窗口概念

滑动窗口技术用于在数组或字符串上维护一个固定大小的子区间。传统暴力解法每次滑动窗口后重新计算极值会导致O(nk)时间复杂度,在数据规模较大时效率低下。

单调队列特性

单调队列通过特殊结构保证队列元素始终有序:

  • 队列元素按从大到小排列(队首最大)
  • 新元素入队前会移除队尾所有较小元素
  • 自动清理超出窗口范围的过期元素
  • 获取极值时间复杂度为O(1)
算法实现步骤

初始化双端队列和结果列表。遍历数组时执行三个关键操作:

  • 维护队列单调性:移除队尾所有小于当前元素的索引
  • 检查并移除超出窗口范围的队首元素
  • 当窗口形成后记录队首元素对应的值

代码示例:

from collections import deque def maxSlidingWindow(nums, k): q = deque() result = [] for i in range(len(nums)): while q and nums[q[-1]] < nums[i]: q.pop() q.append(i) if q[0] <= i - k: q.popleft() if i >= k - 1: result.append(nums[q[0]]) return result
复杂度分析

时间复杂度严格线性:

  • 每个元素最多入队出队各一次
  • 总体时间复杂度O(n) 空间复杂度取决于窗口大小:
  • 队列最多存储k个元素
  • 空间复杂度O(k)
实际应用示例

给定数组[1,3,-1,-3,5,3,6,7]和k=3:

  • 窗口[1,3,-1]时队列存储[3,-1]的索引,最大值为3
  • 窗口[3,-1,-3]时最大值仍为3
  • 后续窗口依次输出[5,5,6,7]
扩展应用场景

该算法模式适用于:

  • 所有滑动窗口极值问题
  • 需要快速查询区间最大/最小值的场景
  • 结合单调栈解决更复杂的区间问题
http://www.jsqmd.com/news/501649/

相关文章:

  • 为内容账号寻找动漫头像,2026年我的素材站点筛选流程
  • 标准值与非标准值校准
  • C语言从入门到进阶——第15讲:深入理解指针(5)
  • day14还是先学ssm吧
  • 和我一起学软件架构:C编译流程
  • DC-DC锂电池充电电源电路设计。 包含锂电池充电电路,升压电路,电压均衡电路等电路组成
  • 软件测试入门封神指南!从理论到实战,核心知识点一篇全覆盖
  • 说说背胶绿色的一线品牌有哪些,广州地区好用又靠谱的推荐 - 工业设备
  • Phi-3 Forest Laboratory 工具链整合:Visual Studio Code高效开发插件推荐与配置
  • CPT306 Principles of Computer Games Design 电脑游戏设计原理 Pt.2 游戏引擎
  • LLM Agent 非法动作频发?Google DeepMind 用 AutoHarness 自动生成代码“安全带”,小模型直接反超大模型!
  • 工具管理化技术工具选型与集成评估
  • 2026年4月初级药师短期冲刺备考工具测评:精准押题才是提分关键! - 孤篇横绝
  • 嵌入式工程师必学(176):深入ADC
  • 协程学习笔记2
  • 手把手教你用OMNet++和NESTING搭建TSN仿真环境(Ubuntu 16.04/18.04版)
  • 不同类型电动汽车充电负荷蒙特卡洛法模拟研究(包括常规充电、快速充电、更换电池) 运用蒙特卡洛法...
  • 分期乐额度回收常见误区,教你轻松实现快速变现 - 团团收购物卡回收
  • 2026年4月初级药师考前冲刺平台哪家靠谱?深度测评5大热门工具! - 孤篇横绝
  • 免费体验:yz-bijini-cosplay镜像,RTX 4090用户的AI绘画利器
  • 指数暴跌,散户运用量化交易拯救自己,量化交易开通
  • StructBERT语义匹配系统效果对比:专业术语与日常用语匹配精度
  • MySQL 中如何解决深度分页问题
  • 闲置购物卡怎么办?永辉卡高价回收指南! - 团团收购物卡回收
  • Phi-3-mini-128k-instruct惊艳效果展示:复杂编程题自动解题+注释生成全过程
  • 深度学习应用
  • 微信立减金转到微信的四种方式对比,高效变现攻略 - 淘淘收小程序
  • ofa_image-caption镜像免配置:Streamlit主题/布局/响应式设计已预优化
  • 2026年青岛龙文辅导服务好用吗,家长口碑告诉你答案 - 工业品网
  • AI负责可能,人类负责正确