寻找无重复最长子串

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

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

首先遍历这个字符串,将它插入到一个数组中,当遇到相同字符时,就移除数组中的元素,最后返回数组长度的最大值即可

var lengthOfLongestSubstring = function(s) {
    var arr=[];
    var max=0;
    for(var i=0;i<s.length;i++){
        if(arr.includes(s[i])){
            arr.splice(0,arr.indexOf(s[i])+1);
    }    
        arr.push(s[i])
    max=max<arr.length?arr.length:max
}
return max}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章