//给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 // // 示例 1: // // 输入: "abcabcbb" //输出: 3 //解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。
//Java:无重复字符的最长子串
public class P3LongestSubstringWithoutRepeatingCharacters{
public static void main(String[] args) {
int result = lengthOfLongestSubstring("abcsdafsdaabcbb");
System.out.println(result);
}
//leetcode submit region begin(Prohibit modification and deletion)
public static int lengthOfLongestSubstring(String s) {
Set<Character> subset = new HashSet<>();
int maxLenth = 0;
for(int i = 0;i <s.length();i++ ){
subset.clear();
for (int j =i;j < s.length();j++) {
if (subset.contains(s.charAt(j))) {
break;
}
subset.add(s.charAt(j));
}
maxLenth = Math.max(maxLenth,subset.size());
}
return maxLenth;
}
}