leecode_python中档题:3. 无重复字符的最长子串
程序员文章站
2022-07-12 12:15:27
...
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
class Solution:
def lengthOfLongestSubstring(self, s: str) -> int:
start = -1 # max = i- start = 0 - start = 1
max = 0
d = {}
for i in range(len(s)):
# s[i] in d ...
if s[i] in d and d[s[i]] > start:
start = d[s[i]] # 要查之后会不会重复
d[s[i]] = i #要更新成最后不重复的位数
else:
d[s[i]] = i
if i - start > max:
max = i - start
return max
上一篇: 动态规划-矩阵最小路径和
下一篇: leecode 3无重复字符的最长子串