給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。
輸入: 「abcabcbb」
輸出: 3
解釋: 因為無重複字元的最長子串是 「abc」,所以其長度為 3。
解決思路:滑動視窗
用到的資料結構:hashmap 判斷是否存在
key為字元 value為字元位置+1 (表示從後面一位不重複)
class
solution
ans = math.
max(ans, end - start +1)
; map.
put(s.
charat
(end)
, end +1)
;}return ans;
}}
start = math.max(map.get(a),start);
例子:…a…b…a…a…b… 舉例應該是這樣的例子吧,第二個a會把start更新到第乙個a之後,第三個a會把start更新到第二個a之後,此時start=idx(a2]+1,到第二個b會選擇max[map(b),start]=start
3 無重複字元的最長子串
給定乙個字串,找出不含有重複字元的最長子串的長度。示例 給定 abcabcbb 沒有重複字元的最長子串是 abc 那麼長度就是3。給定 bbbbb 最長的子串就是 b 長度是1。給定 pwwkew 最長子串是 wke 長度是3。請注意答案必須是乙個子串,pwke 是 子串行 而不是子串。思路 用 i...
3 無重複字元的最長子串
給定乙個字串,找出不含有重複字元的最長子串的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 無重複字元的最長子串是 abc 其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 無重複字元的最長子串是 b 其長度為 1。示例 3 輸入 pwwkew 輸出 3 解釋 無重複字元的最長子串是...
3 無重複字元的最長子串
給定乙個字串,請你找出其中不含有重複字元的最長子串的長度。示例 1 輸入 abcabcbb 輸出 3解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 輸入 pwwkew 輸出 3解釋 因為...