Day1&Day2 数组专题总结
一、常用方法
1、双指针
2、滑动窗口
涉及求最大/最小子数组或子串时,用一个循环代替两个for循环
右指针表示窗口的终止位置
思路
i, j指针分别代表窗口的初始位置和终止位置,区间表示为[i,j]
加入j指针指向的数组元素到窗口中——寻找可行解
窗口扩大到满足条件(限制+最大/最小),移动i指针缩小窗口,直到刚好不满足限制——寻找最优解
如求最小覆盖子串,只要窗口内包含了子串相应的字母种类和个数,就满足了条件,需要缩小窗口;而求最大长度,尽可能扩大窗口,直到不满足限制
因此,求最小值时
原创
2023-11-30 06:59:44 ·
64 阅读 ·
0 评论