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

2021-10-02 05:30:11 字數 712 閱讀 8323

c++ 的set解法

如下:

class solution 

int ans=1;

int start=0;

int end=1;

// 最長字串下表

set<

char

>a;

a.insert

(s[start]);

while

(endlength()

)else

}return ans;}}

;

解法二

首先設定子字串邊界,初始時最小子字串邊界為i=0;j=1;

每次將右邊界加一,直到右邊界達到end;

並在每次擴大右邊界時,遍歷字串,使i從start到end之間的子串中有無字元的值與s[end]相等,即出現重複字元是s[i]。

如果出現重複字元,則改變start的值為i+1;

class solution 

int ans=1;

int start=0;

int end=1;

// 最長字串下表

while

(endlength()

)}end++

; ans=

max(ans,end-start);}

return ans;}}

;

Leetcode刷題之路 3 無重複的最長字串

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

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

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

LeetCode 刷題 3 無重複最長子串

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