题目描述:
思路:哈希表+滑动窗口
class Solution {
public:
int lengthOfLongestSubstring(string s) {
// key=字母, value=最新的下标的位置
map<char, int> mp;
int l = 0, r = 0;
int res = 0;
while (r < s.length()) {
if (mp.find(s[r]) != mp.end()) {
l = max(l, mp[s[r]]);
}
mp[s[r]] = r+1;
res = max(res, r-l+1);
r++;
}
return res;
}
}