無重複字串的最長字串

2021-10-03 23:52:46 字數 957 閱讀 8772

無重複字元的最長子串

難度中等

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

示例 1:

輸入: 「abcabcbb」

輸出: 3

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

示例 2:

輸入: 「bbbbb」

輸出: 1

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

示例 3:

輸入: 「pwwkew」

輸出: 3

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

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

class

solution

:def

lengthoflongestsubstring

(self, s:

str)

->

int:

s1=#定義的子字串陣列#

l1=0 l2=0if

len(s)==0

:return

0for i in

range

(len

(s))

:if s[i]

in s1:

j=s1.index(s[i]

)#求出當前s中的字元s[i]在s1中的索引

s1=s1[j+1:

]#s1更新為最新的子字串

l1-=j #更新子字串的長度

無重複字元的最長字串

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

無重複字元的最長字串

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

無重複字串的最長字串解題思路

首先,頭指標start的含義是 如果字串 現某個字元重複,start便後移至上一次出現這個字元的後面一位,字典中此字元對應的value也會更新為當前字元的索引,總之,保持 start,i 中不存在重複字元,對應下文的 else if dic cur 1 start start dic cur 1 d...