03. 无重复最长子串

2020-07-11  本文已影响0人  卡尔书院

题目

步骤

正确代码

/**
 * @param {string} s
 * @return {number}
 */
var lengthOfLongestSubstring = function(s) {
    const set = new Set();
    let i = 0, j = 0, maxLenth = 0;
    for(; i < s.length; i++){
        if(!set.has(s[i])){
            set.add(s[i]);
            maxLenth = Math.max(maxLenth, set.size);
        }else{
            while(set.has(s[i])){
                set.delete(s[j]);
                j++;
            }
            set.add(s[i]);
        }
    }
    return maxLenth;
};
 if(s.length === 0){
        return 0;
    }

错误代码

/**
 * @param {string} s
 * @return {number}
 */
var lengthOfLongestSubstring = function(s) {
    let i, j, maxLenth = 0;
    const set = new Set();

    if(s.length === 0){
        return 0;
    }
    for(i = 0; i < s.length; i++){
        if(!set.has(s[i])){
            set.add(s[i]);
            maxLenth = Math.max(maxLenth, set.size);
        }else{
            set.delete(s[j]);
            set.add(s[i]);
        }
        j++;
    }
    return maxLenth;
};
上一篇 下一篇

猜你喜欢

热点阅读