A43666. 从字符串中找出一个最长的不包含重复字符的子字符串,并计算该子字符串的长度。例:输 入1:abcabcbb输 出1:3输 入2:bbbbb输 出2:1
填空题
较难
知识点
题目描述
从字符串中找出一个最长的不包含重复字符的子字符串,并计算该子字符串的长度。
例:
输 入1:abcabcbb
输 出1:3
输 入2:bbbbb
输 出2:1
参考答案
class Solution:
def lengthOfLongestSubstring(self, s):
if len(s) <= 1: return len(s)
max_length = 1
tmp = collections.deque()
tmp.append(s[0])
for c in s[1:]:
if c in tmp:
while tmp.popleft() != c:
continue
tmp.append(c)
if len(tmp) > max_length:
max_length = len(tmp)
return max_length
上一题
下一题