题解 | #最长无重复子数组#
最长无重复子数组
https://www.nowcoder.com/practice/b56799ebfd684fb394bd315e89324fb4
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param arr int整型一维数组 the array # @return int整型 # class Solution: def maxLength(self , arr: List[int]) -> int: dic = {} start = 0 max_length = 0 for i, v in enumerate(arr): if v in dic: # 有两种情况,开始的值和当前值重复,另一种是其他值已经重复了,开始位置已经越过刚才那个重复的了 start = max(start, dic[v] + 1) dic[v] = i max_length = max(max_length, i - start + 1) return max_length