class Solution:
def lengthOfLongestSubstring(self, s: str)->int:iflen(s)==0:return0iflen(s)>0:
d ={}
count =0
max_count =[0]
new_start =0for i, num in enumerate(s):if num in d and new_start < d[num]:
max_count.append(count)
new_start = d[num]
count = i - d[num]if num not in d or(num in d and new_start > d[num]):
count +=1
d[num]= i
max_count.append(count)returnmax(max_count)
class Solution:
def lengthOfLongestSubstring(self, s: str)->int:
d ={}
ans =0
start =0for i, num in enumerate(s):if num in d:
start =max(start, d[num]+1)
d[num]= i
ans =max(ans, i - start +1)return ans
class Solution:
def lengthOfLongestSubstring(self, s: str) -> int:
d = {}
count = 0
max_length = 0
start = 0
length = [0]
a = []
num = 0
for i in range(len(s)):
if s[i] in a:
a.append(s[i])
start = d[s[i]]
a[0: d[s[i]] + 1 - num] = ''
num = d[s[i]] + 1
d[s[i]] = i
count = i
if s[i] not in a:
count = count + 1
d[s[i]] = i
a.append(s[i])
max_length = count - start
length.append(max_length)
return max(length)