3、无重复字符串最长字串
本题采用滑动窗口的思想,利用左右指针遍历字符串,在利用set去重,同时利用res记录最大值。具体代码如下:
class Solution {
public:
int lengthOfLongestSubstring(string s) {
unordered_set<char> myset;
int len=s.length();
if(len==0) return 0;
int l=0,r=0;
int res=0;
while(r<len){
while(myset.count(s[r])){
myset.erase(s[l]);
l++;
}
res=max(res,r-l+1);
myset.insert(s[r]);
r++;
}
return res;
}
};
对于滑动窗口相关题目,力扣刷题大佬也总结了相关模板,但是思想上的了解才是最主要的。