public class Solution {
/**
* @param s: a string
* @return: an integer
*/
public int lengthOfLongestSubstring(String s) {
// write your code here
if (s.length() == 0) {
return 0;
}
int maxLength = 1;
List<Character> list = new ArrayList<Character>();
list.add(s.charAt(0));
for (int i = 1; i < s.length(); i++) {
if (list.contains(s.charAt(i))) {
int index = list.indexOf(s.charAt(i));
list = list.subList(index + 1, list.size());
list.add(s.charAt(i));
// System.out.println(list);
maxLength = Math.max(maxLength, list.size());
} else {
list.add(s.charAt(i));
maxLength = Math.max(maxLength, list.size());
}
}
return maxLength;
}
}