c盤清理的步驟是什么(如何清理C盤空間)
如何清理C盤空間怎么清理C盤的垃圾文件?每天上網會給電腦帶來很多臨時文件,這些垃圾文件不清理掉時間久了就會影響到電腦的運行速度。那怎
2022/12/08
1.簡述:
給定一個字符串 s ,請你找出其中不含有重復字符的最長子串的長度。
示例1:
(資料圖片僅供參考)
輸入: s = "abcabcbb"
輸出: 3
解釋: 因為無重復字符的最長子串是 "abc",所以其長度為 3。
示例 2:
輸入: s = "bbbbb"
輸出: 1
解釋: 因為無重復字符的最長子串是 "b",所以其長度為 1。
示例 3:
輸入: s = "pwwkew"
輸出: 3
解釋: 因為無重復字符的最長子串是"wke",所以其長度為 3。
請注意,你的答案必須是 子串 的長度,"pwke"是一個子序列,不是子串。
2.代碼實現:
class Solution { public int lengthOfLongestSubstring(String s) { // 哈希集合,記錄每個字符是否出現過 Setocc = new HashSet (); int n = s.length(); // 右指針,初始值為 -1,相當于我們在字符串的左邊界的左側,還沒有開始移動 int rk = -1, ans = 0; for (int i = 0; i < n; ++i) { if (i != 0) { // 左指針向右移動一格,移除一個字符 occ.remove(s.charAt(i - 1)); } while (rk + 1 < n && !occ.contains(s.charAt(rk + 1))) { // 不斷地移動右指針 occ.add(s.charAt(rk + 1)); ++rk; } // 第 i 到 rk 個字符是一個極長的無重復字符子串 ans = Math.max(ans, rk - i + 1); } return ans; }}
標簽: 向右移動