leetcode 滑動視窗

2021-10-19 05:29:49 字數 1080 閱讀 3087

滑動視窗可以套用模板:

}}如果不是

left = math.max((int)map.get(ch) + 1, left);

而是left = (int)map.get(ch) + 1;

當指標到了第二個a時,因為 left = map.get('a) + 1, left會後退指向到第乙個a的下乙個下標,即1, 所以得到錯誤結果

map只儲存子串中的兩個字元,若遇到新的字元,則刪除最老的那個字元。

然後left再從最老的字元的下標 + 1開始。

比如 abba ,則 最老的字元為 第2個b。

class

solution

map.

put(s.

charat

(i), i)

; max = math.

max(max, i - left +1)

;}return max;

}}

滑動視窗leetcode

給定乙個陣列 nums,有乙個大小為 k 的滑動視窗從陣列的最左側移動到陣列的最右側。你只可以看到在滑動視窗 k 內的數字。滑動視窗每次只向右移動一位。返回滑動視窗最大值。示例 輸入 nums 1,3,1,3,5,3,6,7 和 k 3輸出 3,3,5,5,6,7 解釋 滑動視窗的位置 最大值 1 ...

leetcode 滑動視窗

面試題57 ii.和為s的連續正數序列 題目 輸入乙個正整數 target 輸出所有和為 target 的連續正整數序列 至少含有兩個數 序列內的數字由小到大排列,不同序列按照首個數字從小到大排列。題解 摘自 什麼是滑動視窗 滑動視窗可以看成陣列中框起來的乙個部分。在一些陣列類題目中,我們可以用滑動...

leetcode 滑動視窗

3.無重複字元的最長子串 給定乙個字串,請你找出其中不含有重複字元的最長子串的長度。示例 1 輸入 abcabcbb 輸出 3解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 輸入 pww...