原题:
Given a string, find the length of the longest substring without repeating character
For example, the Longest substring without repeating letters for "abcabcbb" is "abc", with the length is 3
思路:参考blog.csdn.net/hcbbt/article/details/43966513
开一个数组记录当前字符最近出现的位置,遍历,更新左边界,用它计算最大值。
代码:
class Solution: def lenthOfLongestSubstring(self, s): res = 0 left = 0 d = {} for i , ch in enumerate(s): if ch in d and d[ch] >= left: left = d[ch] + 1 d[ch] = i res = max(res, i -left + 1) return res
时间: 2024-10-15 15:23:40