滑动窗口可以用来解决数组或者字符串中的连续数字或者字符问题。
定义两个指针left和right,这两个指针在移动过程中维护一个窗口。
简单的题目可以有一个相对固定的模版,分为
1.进入窗口; 涉及right
2.判断是否需要更新窗口,退出窗口; 涉及left++操作
3.更新结果(right - left + 1)。
可能需要结合其他数据结构,比如用unordered_map统计次数,用sum求和等。
已练习过的leetcode典型题目:
209.⻓度最⼩的⼦数组
3.⽆重复字符的最⻓⼦串
1004.最⼤连续1的个数III 和 I
1658.将x减到0的最⼩操作数
904.⽔果成篮
438.找到字符串中所有字⺟异位词
30.串联所有单词的⼦串
76.最⼩覆盖⼦串