什么是无重复字符的最长子串
(个人理解)
s = “abcabcbb”,str=‘’;(str表示无重复字符的最长子串)
1,s[0]=a, str中没有’a’, str = ‘a’
2,s[1]=b, str中没有’b’, str=‘ab’
3,同理str=‘abc’
4,s[3]=a, str有’a’, 从str的0一直删除到有a的位置,并且将s[3]加入,此时str=‘bca’
5,同理s[4]=b,str中有b,str从0删除到b为位置,将是[4]加入。
。。。。。
end,以此类推str=‘abc’
/**
* @param {string} s
* @return {number}
*/
var lengthOfLongestSubstring = function(s) {
var max=0;
var arr=[];
for(var i=0;i<s.length;i++){
if(arr.indexOf(s[i])==-1){
arr.push(s[i]);
}else{
arr.splice(0,arr.indexOf(s[i])+1)
arr.push(s[i])
}
max=Math.max(max,arr.length);
}
return max;
};