第一反应就是肯定都是穷举。
两个循环,第一层循环遍历起始位置,第二层循环确定右边界,不断滑动直到产生一个重复字符停止。
下面是代码,很奇怪,我感觉已经考虑很全面而且在idle上测试第62个测试用例‘""’(也就是两个双引号)是正确的,可是力扣一直显示错误。
max_str = 0 len_str = len(s) for i in range(len_str): if max_str >= len_str - i: return max_str item_temp = [] for j in range(i, len_str): if s[j] not in item_temp: item_temp.append(s[j]) else: if len(item_temp) > max_str: max_str = len(item_temp) break return max_str
下面是截图在idle的截图