class Solution {
public:
int lengthOfLongestSubstring(string s) {
//用哈希来记录,有点像是今日的打卡题
unordered_set <char> mp;
//mp用来记录最长子串的长度
int len=s.size();
//右指针初始化为-1
int rk=-1,maxlen=0;
for(int i=0;i<len;i++){
if(i!=0){
//每移动一次,就把左边的消除掉
mp.erase(s[i-1]);
}
while(rk+1<len&&!mp.count(s[rk+1])){
mp.insert(s[rk+1]);
rk++;
}
maxlen=max(maxlen,rk-i+1);
}
return maxlen;
}
};
【leetcode】3. 无重复字符的最长子串
最新推荐文章于 2024-09-12 16:31:59 发布