🪟 滑动窗口

维护一个可变大小的窗口(左右指针),根据条件动态扩张或收缩,解决连续子串/子数组问题,时间复杂度 O(n)。

2 题  ·  中等 ×2

# 题目 难度
3 无重复字符的最长子串 中等
438 找到字符串中所有字母异位词 中等

核心思路

  • 无重复字符的最长子串:右指针扩张,遇到重复字符则移动左指针直到窗口内无重复,全程记录最大长度。
  • 找到字符串中所有字母异位词:固定长度窗口(等于 p 的长度),用频率数组比较窗口内字符分布与 p 是否一致。