题目链接
题目中的关键变量:
[st,i]是无重复字符的子串,ans当前最长子串,
任务:
搜索所有无重复字符的子串
class Solution {
public:
int lengthOfLongestSubstring(string s) {
int len=s.size();
int flag=0;
int res=1;
int ans=0;
if(len==0){
return 0;
}
int st=0;
int temp=0;
for(int i=1;i<len;i++){//控制能搜索字符串范围
for(int j=st;j<i;j++){//从上一个找到相同字符的位置开始寻找
if(s[i]==s[j]){
flag=1;//标记找到相同字符
temp=j;//记录找到的位置
}
if(flag==1){上一步搜索到相同的字符
st=temp+1;//更新st
flag=0;//
}
}
ans=i-st+1;
if(ans>res){//更新答案
res=ans;
}
}
return res;
}
};