Substring 结构和遍历
public class Solution {
public int lengthOfLongestSubstring(String s) {
if(s.length() <= 1) return s.length();
int start = 0;
int end = 0;
int max = 1;
boolean[] hash = new boolean[256];
while(end < s.length()){
int key = (int) s.charAt(end);
if(!hash[key]){
hash[key] = true;
end ++;
max = Math.max(max, end - start);
} else {
while(start < end && s.charAt(start) != s.charAt(end)){
hash[(int)s.charAt(start)] = false;
start ++;
}
start ++;
end ++;
}
}
return max;
}
}Last updated