64,642
社区成员
发帖
与我相关
我的任务
分享
class Solution {
public:
int lengthOfLongestSubstring(string s) {
if (s.empty()) {
return 0;
}
auto max = 0;
auto begin = 0;
auto end = 0;
int m[129] = {};
for (auto i = 0; i < 129; ++i) {
m[i] = -1;
}
auto length = 0;
while (begin < (int)s.size() && end < (int)s.size()) {
if (m[s[end]] < begin) {
++length;
} else {
if (length > max) {
max = length;
}
begin = m[s[end]] + 1;
length = end - begin + 1;
}
m[s[end]] = end;
++end;
}
if (length > max) {
max = length;
}
return max;
}
};