leetCode 刷題 無重複最長字串

2022-08-11 19:57:11 字數 1368 閱讀 4889

原題

給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。

** 示例 1:

** 輸入: "abcabcbb"

* 輸出: 3

* 解釋: 因為無重複字元的最長子串是 "abc",所以其長度為 3。

* 示例 2:

** 輸入: "bbbbb"

* 輸出: 1

* 解釋: 因為無重複字元的最長子串是 "b",所以其長度為 1。

* 示例 3:

** 輸入: "pwwkew"

* 輸出: 3

* 解釋: 因為無重複字元的最長子串是 "wke",所以其長度為 3。

*   請注意,你的答案必須是 子串 的長度,"pwke" 是乙個子串行,不是子串。

在原題的基礎上我增加了輸出符合要求的字元

1

public

class

lswrc

6 string split = str.split("");//

得到拆分陣列

7 listcontent = new arraylist();

8 list> list = new arraylist>(16);

9for (int i = 0; i ) else

else

23list.add(temp0);24}

25}26//

"pwwkewwdeqasdasdwqeqewqewqeqw"

27//

刪除包含重複字元的之前的字元,並添當前重複字元

28int index =content.indexof(split[i]);

29for (int j = 0; j <=index ; j++)

32content.add(split[i]);

33//

若此時的長度滿足結果集條件則加入結果集

34 listtemp = new arraylist(content);

35if(list.get(0).size()<=temp.size())

39list.add(temp);40}

41}42}

43system.out.println(list);

44return list.get(0).size();45}

4647

public

static

void

main(string args)

50 }

注意點:1.刪除index之前的集合資料

2.結果集必須在當前資料處理前後都新增一次,否則或導致最後一次處理的結果未被儲存到結果集

LeetCode 刷題 3 無重複最長子串

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

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

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

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

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