3. Longest Substring Without Repeating Characters
solution
class Solution:
def lengthOfLongestSubstring(self, s: str) -> int:
mydict = collections.defaultdict(int)
l = 0
res = 0
for r, char in enumerate(s):
mydict[char] += 1
while mydict[char] > 1:
mydict[s[l]] -= 1
l += 1
res = max(res, r - l + 1)
return resclass Solution:
def lengthOfLongestSubstring(self, s: str) -> int:
mydict = {}
start = 0
res = 0
for i, char in enumerate(s):
if char not in mydict:
dist = i - start + 1
res = max(res, dist)
else:
if mydict[char] >= start:
start = mydict[char] + 1
else:
res = max(res, i - start + 1)
mydict[char] = i
return resLast updated