lf rt 確定子串範圍
,mm記錄曾經遇到過的最長子串
針對每乙個新的字元,從右向左找是否有重複,重複則重新劃定範圍,捨棄先遇到的字元。
s[lf]~s[rt]+s[i]構成這個最長子串,因此每次從rt開始一直遍歷到lf。
五月打卡之新增——滑動視窗
while(rt有移動空間)
記錄此時的子串。
rt++
;}
記得刪去不要的字元,否則例如tmmzuxt
會因為第乙個t影響後續結果。class
solution
lf++
;//while找到了出現衝突的lf,實際要再+1
} repeat[s[rt]]=
1;
mm=max(mm,rt-lf+1)
; rt++;}
return mm;}}
;
LeetCode 03 無重複字元的最長字串
從頭開始遍歷每乙個字元放入到hashmap中,然後依次掃瞄後續每乙個字元繼續放入到hashmap中,直到某一字元已經存在為止。得到以該字元開頭對應的最大無重複字串。迴圈得到無重複字元的最長字串 當然我肯定不會就此滿足,於是我在乙個精選中看到了四個字滑動視窗不錯,我的思想就是這個,但是 實現上稍微有點...
Leetcode 03 無重複字元的最長子串
中等題 給定乙個字串,請你找出其中不含有重複字元的最長子串的長度。自己在那兒想了半天,定義了left和right兩個指標,每次右邊界右移得到新的字元,檢查前面有沒有重複的,如果有就直接將左邊界移至重複字元後面乙個,因為每一步都確保了前面的字串沒有重複字元,因此只要考慮新加入的即可,邏輯上應該沒啥問題...
Leetcode題庫03 無重複字元的最長子串
給定乙個字串,請你找出其中不含有重複字元的最長子串的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 輸入 pwwkew 輸出 3 解釋...