
public class ReString {
public static 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 = map.get(s.charAt(i));
}
map.put(s.charAt(i),i);
max = Math.max(max,i-left);
}
return max;
}
public static void main(String[] args) {
int i = lengthOfLongestSubstring("abcabcbb");
System.out.println(i);
}
}
输出结果为3,结果正确。
原文:https://www.cnblogs.com/g9420/p/13405516.html