leetCode 刷题

给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。

示例 1:

输入: "abcabcbb"

输出: 3 

解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。

示例 2:

输入: "bbbbb"

输出: 1

解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。

示例 3:

输入: "pwwkew"

输出: 3

解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。

请注意,你的答案必须是 子串 的长度,"pwke" 是一个子序列,不是子串。

解答: 滑动窗口

执行结果:
通过
显示详情
执行用时 :108 ms, 在所有 JavaScript 提交中击败了93.37%的用户
内存消耗 :39.8 MB, 在所有 JavaScript 提交中击败了62.97%的用户
 var lengthOfLongestSubstring = function(s) {
        if(!s)return 0;
        var max = "";
        var ss = "";
        for(var m = 0; m <s.length;m++){
            var t = s.charAt(m);
            var index = ss.indexOf(t);
             ss = ss+t;
            if(index>-1){
                var tt = ss.substring(0,index+1);
                ss = ss.substring(index+1);
                max = tt.length>max.length?tt:max;
            }else{
                max= max.length<ss.length?ss:max;
            }
        }
        return max.length>ss.length?max.length:ss.length;
    };




本文标题:leetCode 刷题
本文链接:https://56way.com/p/129.html
作者授权:除特别说明外,本文由 无路 原创编译并授权 小无路 刊载发布。
版权声明:本文不使用任何协议授权,您可以任何形式自由转载或使用。

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。