首页 > 编程语言 > 详细

Leetcode部分题目整理(Javascript)

时间:2019-08-20 10:10:58      阅读:75      评论:0      收藏:0      [点我收藏+]

无重复字符的最长子串

/**
 * @param {string} s
 * @return {number}
 */
var lengthOfLongestSubstring = function(s) {
    var ans = [], vis = [], max = 0;
    for(var i = 0; i < 256; i++){
        vis.push(-1);
    }
    for(var i = 0; i < s.length; i++){
        var t = s[i].charCodeAt() - 0;
        if(vis[t] == -1){
            vis[t] = i;
            ans.push(s[i]);
            if(ans.length > max){
                max = ans.length;
            }
        }
        else{
            var pos = ans.indexOf(s[i]);
            for(var j = pos - 1; j >= 0; j--){
                vis[ans[j].charCodeAt() - 0] = -1;
            }
            ans = ans.slice(pos + 1);
            ans.push(s[i]);
            vis[t] = i;
        }
    }
    return max;
};

 

Leetcode部分题目整理(Javascript)

原文:https://www.cnblogs.com/qq965921539/p/11381010.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!