題目描述:
給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。
輸入: 「abcabcbb」
輸出: 3
解釋: 因為無重複字元的最長子串是 「abc」,所以其長度為 3。
思想:
遇到子串問題,首先想到的就是滑動窗**巧。類似之前的思路,使用 window 作為計數器記錄視窗中的字元出現次數,然後先向右移動 right,當 window **現重複字元時,開始移動 left 縮小視窗,如此往復。
核心**如下:
int lengthoflongestsubstring(string s)
//因為我們要求的是最長子串,所以需要在每次移動right增大視窗時更新res
res = max(res, right - left);
} //測試
cout << "left = " << left << " , right = " << right << endl;
for (unordered_map::iterator it = window.begin(); it != window.end(); it++)
return res;
}
無重複字元最長子串
給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 輸入 pwwkew 輸出 3 ...
無重複字元最長子串
題目描述 給定乙個字串,找出不含有重複字元的 最長子串 的長度。示例 給定 abcabcbb 沒有重複字元的最長子串是 abc 那麼長度就是3。給定 bbbbb 最長的子串就是 b 長度是1。給定 pwwkew 最長子串是 wke 長度是3。請注意答案必須是乙個子串,pwke 是子串行而不是子串 i...
無重複字元的最長子串
給定乙個字串,找出不含有重複字元的最長子串的長度。示例 給定 abcabcbb 沒有重複字元的最長子串是 abc 那麼長度就是3。給定 bbbbb 最長的子串就是 b 長度是1。給定 pwwkew 最長子串是 wke 長度是3。請注意答案必須是乙個子串,pwke 是 子串行 而不是子串。int le...