3. 无重复字符的最长子串
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
class Solution {public: int lengthOfLongestSubstring(string s) { if(!s.length()) return 0;//空字符串 直接返回0 int left=0,right=1,maxl=1,len=1;//双指针 while(right<s.length()){ len=1;//len为当前子串中不重复字符个数 for(int i=left;i<right;i++){//遍历右指针前的所有字符 if(s[i]==s[right]){//若有与右指针指向字符相同的字符 则将左指针移动到该字符后一位置 left=i+; break; } else{ len++; } } maxl=max(len,maxl); right++; } return maxl; } };