滑动窗口方法:
找出从每一个字符开始的,不包含重复字符的最长子串。
class Solution {
public int lengthOfLongestSubstring(String s) {
if(s.length() == 0) return 0;
HashMap<Character,Integer> map = new HashMap<Character,Integer>();
int max = 0;
int left = 0;
for(int i = 0; i<s.length(); i++){
if(map.containsKey(s.charAt(i))){
left = Math.max(left,map.get(s.charAt(i))+1);
}
map.put(s.charAt(i),i);
max = Math.max(max,i-left+1);
}
return max;
}
}