这道题使用滑动窗口。快指针写在 for 循环里,i++ 负责向前跑,慢指针写在 for 里面的 while 循环,只要满足一定条件,j++。
使用一个 map 维护当前滑动窗口内部的元素和它出现的次数。向前移动 i 指针,如果 [j, i]
窗口中有重复的元素,向前移动 j 直到窗口中没有重复的元素。窗口长度变化时记录窗口长度的最大值。
1 | class Solution { |
这道题使用滑动窗口。快指针写在 for 循环里,i++ 负责向前跑,慢指针写在 for 里面的 while 循环,只要满足一定条件,j++。
使用一个 map 维护当前滑动窗口内部的元素和它出现的次数。向前移动 i 指针,如果 [j, i]
窗口中有重复的元素,向前移动 j 直到窗口中没有重复的元素。窗口长度变化时记录窗口长度的最大值。
1 | class Solution { |