给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
输入: s = “abcabcbb”
输出: 3
public static int lengthOfLongestSubstring(String s) {
int max = 0;
Set<Character> set = new HashSet<>();
int len = s.length();
int rk = 0;
for (int i = 0; i < len; i++) {
if (i != 0) {
set.remove(s.charAt(i - 1));
}
while(rk < len) {
if (set.contains(s.charAt(rk))) {
break;
}
set.add(s.charAt(rk));
rk++;
}
if (set.size() > max) {
max = set.size();
}
}
return max;
}