每日小题5

# 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
# 示例 1:
# 输入: "abcabcbb"
# 输出: 3

class Solution:
def lengthOfLongestSubstring(self, s):
"""
:type s: str
:rtype: int
"""
st = {}#字典记录里面字符最新的位置
i, ans = 0, 0
for j in range(len(s)):
if s[j] in st:
i = max(st[s[j]], i)#i记录走到哪了最新出现重复的地方在他之前出现重复的了
ans = max(ans, j - i + 1)求最大的距离
st[s[j]] = j + 1
return ans
a=Solution()
print(a.lengthOfLongestSubstring('abcabcbb'))
posted @ 2019-02-18 19:19  呼呼嘻嘻  阅读(92)  评论(0编辑  收藏  举报