class Solution { public:int lengthOfLongestSubstring(string s) {unordered_set<char> set_charlist;int last=0;int max_=0;for(int i=0;i<s.size();i++){if(set_charlist.contains(s[i])){while(set_charlist.contains(s[i])){//哈希桶中的第一个元素:unordered_set基于哈希表实现,//begin()返回的是当前哈希桶中第一个非空桶的第一个元素set_charlist.erase(s[last]);// 挨着循序移除前方 last++;}set_charlist.insert(s[i]);}else{set_charlist.insert(s[i]);}// cout<< "i " <<i// << " s[i] " <<s[i]// << " last " <<last// << " 当前 " <<i-last+1// << " max_ " <<max_// <<endl;max_=max(max_,i-last+1);}return max_;} };