LeetCode 3.无重复字符串的最长子串
class Solution: def lengthOfLongestSubstring(self, s: str) -> int: # 字符串str。找出其中不含有重复字符的最长子串的长度。 hash_set = set() n = len(s) r = 0 res = 0 for i in range(n): if i != 0 : hash_set.remove(s[i-1]) # 移除重复的前部元素 while r < n and s[r] not in hash_set: # 移动右指针→,判断s[r]是否重复出现过 hash_set.add(s[r]) # 没用出现 且 不越界,添加值到哈希集合中 r += 1 # 右移指针 res= max(r-i,res) # 判取最大值(新的子串距离和原先的子串距离) return res