給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。
示例 1:
輸入: 「abcabcbb」
輸出: 3
解釋: 因為無重複字元的最長子串是 「abc」,所以其長度為 3。
示例 2:
輸入: 「bbbbb」
輸出: 1
解釋: 因為無重複字元的最長子串是 「b」,所以其長度為 1。
示例 3:
輸入: 「pwwkew」
輸出: 3
解釋: 因為無重複字元的最長子串是 「wke」,所以其長度為 3。
請注意,你的答案必須是 子串 的長度,「pwke」 是乙個子串行,不是子串。
1.雙指標思想,i為慢指標,指向當前子串開始位置,j為快指標,指向當前判斷的字元
2.idx[s[j]]記錄字元s[j]上次出現的位置
3.每次迭代記錄字元出現位置
4.當字元s[j]上次出現的位置大於當前子串開始位置i時,比較當前子串長度與目前為止所有子串最大長度,取最大,同時將開始位置設為字元s[j]上次出現位置的下一位
class
solution
idx[s[j]
]= j;
j++;}
res =
max(res, j - i)
;return res;}}
;
Leecode熱題100 兩數相加
給出兩個 非空 的鍊錶用來表示兩個非負的整數。其中,它們各自的位數是按照 逆序 的方式儲存的,並且它們的每個節點只能儲存 一位 數字 如果,我們將這兩個數相加起來,則會返回乙個新的鍊錶來表示它們的和。您可以假設除了數字 0 之外,這兩個數都不會以 0 開頭。示例 輸入 3 4 3 5 6 2 輸出 ...
leecode第三題,無重複字元的最長子串
給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 輸入 pwwkew 輸出 3 ...
leecode 無重複字元的最長子串
給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。題解 因為題目中所有的字元都是字元,字元的ascall碼不大於300,用乙個300的word陣列來儲存,每個字元在字串中的位置,當字元重複時,將該字元首次出現的字元的位置求解出來,利用word陣列儲存陣列的便利,將該位置之前所有的字元除去...