LeetCode 無重複字元的最長子串

2022-09-12 20:06:15 字數 729 閱讀 5910

解題思路:採用滑動視窗演算法,在視窗內的字串就是不重複子串,每次判斷新的字元時,看視窗內是否存在該字元,如果存在,那麼剔除並重新調整視窗左邊界邊界;如果不存在,那麼新增到視窗內,視窗右邊界++。

值得注意的樣例

>>>"

"\\空格

>>>"

abba

"

具體**:

int lengthoflongestsubstring(char *s) 

//查詢第一次出現的位置

else

//不在視窗內,直接加入

else

winr++;

}tmplen = winr - winl + 1

; maxlen = maxlen < tmplen ?tmplen : maxlen;

}return

maxlen;

}

暴力解法(超時):逐個遍歷,如果出現重複,那麼i回退到i-tmplen重新遍歷

int lengthoflongestsubstring(char *s)

else

}maxlen=maxlentmplen:maxlen;

if(strcmp(s,"

")==0

) maxlen=1

;

return

maxlen;

}

LeetCode第3題題解 無重複字元的最長子串

題目 leetcode 題目描述 給定乙個字串,請你找出其中不含有重複字元的最長子串的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 ...

LeetCode刷題實戰3 無重複字元的最長子串

題目描述 給定乙個字串,請你找出其中不含有重複字元的最長子串的長度。示例 1 輸入 s abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 s bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 輸入 s pww...

leetcode刷題之路3 無重複字元的最長子串

給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。字元陣列和字串的區別,c語言字元陣列和字串區別詳解 開始的想法是在對字元陣列設定兩個指標,初始化乙個在位置0乙個在位置1,ans初始化...