固定长度滑动窗口
固定长度滑动窗口
基本概念
固定长度滑动窗口算法(Fixed Length Sliding Window):在数组 / 字符串上维护一个长度固定的窗口,通过不断向右滑动窗口,实时更新窗口内的数据,并根据题目要求动态维护最优解。
算法步骤
假设窗口大小为window_size,步骤如下
- 定义两个指针left和right,初始都指向序列起始位置(left=0,right=0),区间表示当前窗口
- 不断右移right,将元素加入 窗口
- 当窗口长度达到window_size(right-left+1>=window_size)时:
- 判断窗口内元素是否满足题目要求,如果满足,更新答案
- 右移left,保持窗口长度不变
- 重复上述过程,直到right 遍历完整个数组
内部实现:
1 | #1. 定义两个指针left和right,初始都指向序列起始位置(left=0,right=0),区间$[left,right]$表示当前窗口 |
应用场景:
窗口大小固定,通常用于统计或查找长度为 k 的区间性质。
- 643.子数组最大平均数I
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 笺札!





