- 0 <= len(输入字符串) <= 5 * 104
- 输入字符串由英文字母、数字、符号和空格组成
- 请注意,你的答案必须是 子串 的长度。例如,在 "pwwkew" 中 "pwke" 是一个子序列,不是子串。
算法描述:
步骤1:初始化最长无重复字符子串的长度maxlength=0。
步骤2:初始化字符串长度len,字符串索引left-0,right=0(字符串索引从0开始)。
步骤3:判断right是否超过字符串长度 len-1,若超过则执行步骤 4,否则判断字符串从位置left到位置right是否有重复字符:
若存在重复,则将索引left的值修改为存在重复字符索引值+1;
若不存在重复,则判断的值 right-left+1是否比maxlength大:若比 maxlength 大,则更新maxlength=right-left+1;
修改right的值为right+1
重复步骤3。
步骤4:输出maxlength的值。