一. 3. 无重复字符的最长子串题目要求给定一个字符串 s 请你找出其中不含有重复字符的 最长 子串 的长度。1. 正常做法//1.滑动数组/* [left,i] --left是左边界,i是右边界 */classSolution{public:intlengthOfLongestSubstring(string s){unordered_mapchar,inthashmap;intmax_len0;//最大长度intleft0;//左边界for(inti0;is.size();i){charcs[i];if(hashmap.count(c)hashmap[c]left){//如果这个字符存在 在左边界的右边(即在这个滑动数组里面)不在滑动数组里面就没必要更新边界了lefthashmap[c]1;// 将重复字符跳过即重复字符的索引1这样新的滑动数组就没有重复的}hashmap[c]i;// 更新字符最新的位置max_lenmax(max_len,i-left1);// i - left 1 区间长度}returnmax_len;}};