暴力解法
解题思路:
1.先创建一个集合和int类型的变量
2.先用for循环来定义起始位置,并把起始位置的字符加入到集合中
3.在用第二个for循环来进行遍历
4.判断它遍历完和集合中是否包含它,同时把最大的长度赋值个a,同时清空集合。如果不包含就把该字符加入到集合中去
class Solution {
public int lengthOfLongestSubstring(String s) {
int a =0;
//先创建一个集合
HashSet<Character> set=new HashSet<>();
//先用for循环来定义起始位置,并把起始位置的字符加入到集合中
for(int j=0;j<s.length();j++){
set.add(s.charAt(j));
//第二个for循环来进行遍历
for(int h=j+1;h<=s.length();h++){
//判断它遍历完和集合中包含它,同时把最大的长度赋值给a,同时清空集合,如果不包含就把该元素加入到集合中。
if (h == s.length() || set.contains(s.charAt(h))){
a=Math.max(a,h-j);
set.clear();
break;
}else{
set.add(s.charAt(h));
}
}
}
return a;
}
}