题目描述
题解
class Solution {
public:
int lengthOfLongestSubstring(string s) {
int len = s.size();
if (len == 0) return 0;
//保存字符
unordered_set<char> usc;
int maxlen = 0;
int mark = -1;
for (int i = 0; i < len; ++i)
{
if (i != 0)
{
usc.erase(s[i - 1]);
}
//该字符未插入unordered_set
while (mark + 1 < len && !usc.count(s[mark + 1]))
{
usc.insert(s[mark + 1]);
++mark;
}
maxlen = max(maxlen, mark - i + 1);
}
return maxlen;
}
};