leedcode3:javaScript尋找無重複字符的最長子串

給定一個字符串,請你找出其中不含有重複字符的 最長子串 的長度。

示例 1:

輸入: "abcabcbb"
輸出: 3 
解釋: 因爲無重複字符的最長子串是 "abc","bca"等,所以其長度爲 3。

解題思路:

(1)將依次不重複的字符存放入一個變量str中,直到遇到重複的字符
(2)在str中找到並刪除重複的字符,繼續存入後面的字符
(3)循環往復
var lengthOfLongestSubstring = function(s) {
	let str='';
	let ary=[];
	let len=0;
	for(var i=0;i<s.length;i++){
		let char=s.charAt(i);
		let index=str.indexOf(char);
		if(index==-1){
			str+=char;
			len=len>str.length?len:str.length;
		}else{
			ary.push(str)
			str = str.slice(index + 1)+char
		}
		
	}
	return len
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章