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

【LeetCode基础算法】滑动窗口与双指针

定长滑动窗口

总结:入-更新-出。
入:下标为 i 的元素进入窗口,更新相关统计量。如果 i<k−1 则重复第一步。
更新:更新答案。一般是更新最大值/最小值。
出:下标为 i−k+1 的元素离开窗口,更新相关统计量。

# 1456. 定长子串中元音的最大数目
# 算是标准的定长滑动窗口模板了
class Solution:def maxVowels(self, s: str, k: int) -> int:ans = 0num_vowels = 0for right, c in enumerate(s):if c in 'aeiou': num_vowels += 1  # 第一步:入if right < k-1:  # 窗口长度没达到k时,就重复第一步continueans = max(ans, num_vowels)  # 更新最值if s[right-k+1] in 'aeiou':  # 第三步:出num_vowels -= 1return ans

2025-4-14
1456. 定长子串中元音的最大数目 1263
643. 子数组最大平均数 I
1343. 大小为 K 且平均值大于等于阈值的子数组数目 1317
2090. 半径为 k 的子数组平均值 1358

2025-4-15
2379. 得到 K 个黑块的最少涂色次数 1360
2841. 几乎唯一子数组的最大和 1546
2461. 长度为 K 子数组中的最大和 1553
1423. 可获得的最大点数 1574(逆向思维,计算长度为n-k的滑动窗口)

2025-4-16进阶
3439. 重新安排会议得到最多空余时间 I 1729
2134. 最少交换次数来组合所有的 1 II 1748
1297. 子串的最大出现次数 1748
2653. 滑动子数组的美丽值 1786

不定长滑动窗口

相关文章:

  • OSPF路由协议
  • Python 注释进阶之Google风格
  • QML ListView:实现可拖拽排序的组件
  • GIS开发笔记(5)结合osg及osgEarth实现虚线环形区域绘制
  • 电脑知识 | TCP通俗易懂详解 <二>tcp首部
  • 微信小程序转为App实践篇 FinClip
  • 金融 IC 卡 CCRC 认证:从合规到业务安全的升级路径
  • asp-for等常用的HTML辅助标记?
  • 继承:(开始C++的进阶)
  • 【回眸】Tessy集成测试软件使用指南(一)新手使用篇
  • 雪域高原的智慧灯塔:国门书屋点亮边疆未来
  • ARCGIS国土超级工具集1.5更新说明
  • 精益数据分析(2/126):解锁数据驱动的商业成功密码
  • STM32 调试口STM32CUBEMX配置
  • 深入解析字体加密解密技术:从原理到实战
  • 数据结构第六章(四)-最小生成树、最短路径
  • Go 语言实现的简单 CMS Web
  • Windows安装Rust版本GDAL
  • 从零开始搭建PyTorch环境(支持CUDA)
  • 基于瑞芯微RK3562 四核 ARM Cortex-A53 + 单核 ARM Cortex-M0——Linux应用开发手册
  • 网站的k线图怎么做/上海百度关键词推广
  • 中国建设银行征信中心网站/sem竞价专员
  • 吉林省吉林市区号/seo算法优化
  • 江苏省备案网站/杭州网站推广优化公司
  • 现在有人还做网站吗/免费推广网站2023
  • 网站建设协议书 印花税/优化是什么梗