
难度:Medium
每次维护以当前字符串结尾的不重复字符串的长度。一个hashset,存放之前的元素。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
class Solution { public: int lengthOfLongestSubstring(string s) { if(s.size()==0) return 0; unordered_set<char> char_set; int max_len = 1; int start_index = 0; char_set.insert(s[0]); for(int i = 1; i < s.size(); i++) { while(char_set.count(s[i]) != 0 && !char_set.empty()) { char_set.erase(s[start_index++]); } char_set.insert(s[i]); max_len = max(max_len, i-start_index+1); } return max_len; } };
|
近期评论