給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。
示例 1:
輸入: s = "abcabcbb"
輸出: 3
解釋: 因為無重複字元的最長子串是 "abc",所以其長度為 3。
示例 2:
輸入: s = "bbbbb"
輸出: 1
解釋: 因為無重複字元的最長子串是 "b",所以其長度為 1。
示例 3:
輸入: s = "pwwkew"
輸出: 3
解釋: 因為無重複字元的最長子串是 "wke",所以其長度為 3。
請注意,你的答案必須是 子串 的長度,"pwke" 是乙個子串行,不是子串。
示例 4:
輸入: s = ""
輸出: 0
思路:以abcabcbb為例
從第乙個字元開始,當沒有遇到重複的字元時,一直向後面延展,一直到abc
當遇到第二個a字元時,從前乙個a的位置截斷,就成了bca
取計算過程中最大的長度即可
題解:
classsolution(object):
deflengthoflongestsubstring(self, s):
""":type s: str
:rtype: int
"""d ={}
i =0
l =0
for j in
range(len(s)):
if (s[j] in d) and (d[s[j]] >=i):
i = d[s[j]] + 1d[s[j]] =j
l = max(l, j-i+1)
#print(i,j,l)
#print(j,d)
returnl#
print(solution.lengthoflongestsubstring(solution,'abba'))
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 輸入 pwwk...
leetcode 3 最長無重複字串
3.longest substring without repeating characters 題面 given a string,find the length of the longest substring without repeating characters.給定字串,找到最長無重複字...