【LeetCode刷题记录】【3】无重复字符的最长子串

想到的方法还是不错的,速度也不错。

class Solution {
public:
    int lengthOfLongestSubstring(string s) {
        int i,j,k;
        int max=0;
        int sleng=s.length();
        int *count=new int[sleng];
        count[sleng-1]=1;//最后一个子串必然为1长度
        for(i=0;i=0;k--)
                    {
                        if(k+count[k]>i+count[i])
                        {
                            count[k]=i-k+count[i];
                        }
                        else
                        {
                            break;
                        }
                    }
                    break;          
                }
                count[i]++;
                
            }
        }
        for(i=0;imax)
            {
                max=count[i];
            }
            if(max>sleng-i)
            {
                break;
            }
        }
        return max;
        
    }
};

 

你可能感兴趣的:(学习日记)