摘要:標(biāo)題答案字符串為空取出來所有不含重復(fù)字符的字符串取出來最長的字符串備忘問題給定一個(gè)字符串,請(qǐng)你找出其中不含有重復(fù)字符的最長子串答案如下字符串為空取出來所有不含重復(fù)字符的字符串取出來最長的字符串
標(biāo)題答案
var str = "abcabcbb"; getLongStr(str); // getLongStr("aa"); function getLongStr(str) { if(!str) { return "字符串為空"; } if(str.length === 1) { return 1; } var arr = str.split(""); var obj = {}; var strArr = []; var nStr = "" var j = 0; // 取出來所有不含重復(fù)字符的字符串 for(var i = 0, len = arr.length; i < len; i++) { var val = arr[i]; if(obj[val]) { i = j; j++; obj = {}; strArr.push(nStr); nStr = ""; } else { obj[val] = true; nStr += val; } } // 取出來最長的字符串 var longIndex = strArr[0].length; for (var i = 1, len = strArr.length; i < len; i++) { var nLen = strArr[i].length; var nVal = strArr[i]; if (nLen > longIndex) { longIndex = nLen; } } return longIndex; }備忘
問題:給定一個(gè)字符串,請(qǐng)你找出其中不含有重復(fù)字符的最長子串?
答案如下:
// getLongStr("abcabcbb"); // getLongStr("aa"); function getLongStr(str) { str += ""; if(!str) { return "字符串為空" } if(str.length === 1) { return str; } var arr = str.split(""); var obj = {}; var strArr = []; var nStr = "" var j = 0; // 取出來所有不含重復(fù)字符的字符串 for(var i = 0, len = arr.length; i < len; i++) { var val = arr[i]; if(obj[val]) { i = j; j++; obj = {}; strArr.push(nStr); nStr = ""; } else { obj[val] = true; nStr += val; } } // 取出來最長的字符串 var longIndex = strArr[0].length; var longArr = [strArr[0]] for (var i = 1, len = strArr.length; i < len; i++) { var nLen = strArr[i].length; var nVal = strArr[i]; if (nLen > longIndex) { longIndex = nLen; longArr = [nVal]; } if (nLen === longIndex) { longArr.push(nVal) } } return [...new Set(longArr)].join(); }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/102867.html
摘要:示例輸入輸出解釋因?yàn)闊o重復(fù)字符的最長子串是,所以其長度為。請(qǐng)注意,你的答案必須是子串的長度,是一個(gè)子序列,不是子串。 LeetCode3.無重復(fù)字符的最長子串JavaScript 給定一個(gè)字符串,請(qǐng)你找出其中不含有重復(fù)字符的最長子串的長度。 示例 1: 輸入: abcabcbb輸出: 3 解釋: 因?yàn)闊o重復(fù)字符的最長子串是 abc,所以其長度為 3。 示例 2: 輸入: bbbbb輸出...
摘要:示例輸入輸出解釋因?yàn)闊o重復(fù)字符的最長子串是,所以其長度為。請(qǐng)注意,你的答案必須是子串的長度,是一個(gè)子序列,不是子串。完成循環(huán)后取隊(duì)列中出現(xiàn)的最大長度即可。 給定一個(gè)字符串,請(qǐng)你找出其中不含有重復(fù)字符的?最長子串?的長度。 示例?1: 輸入: abcabcbb 輸出: 3 解釋: 因?yàn)闊o重復(fù)字符的最長子串是 abc,所以其長度為 3。 示例 2: 輸入: bbbbb 輸出: 1 解釋:...
摘要:先跳到第三題是因?yàn)榈诙}第一眼沒讀懂一題目無重復(fù)字符的最長子串給定一個(gè)字符串,請(qǐng)你找出其中不含有重復(fù)字符的最長子串的長度。示例輸入輸出解釋因?yàn)闊o重復(fù)字符的最長子串是,所以其長度為。以此來實(shí)現(xiàn)判斷是否包含重復(fù)字符。 先跳到第三題是因?yàn)榈诙}第一眼沒讀懂 一、題目 無重復(fù)字符的最長子串: 給定一個(gè)字符串,請(qǐng)你找出其中不含有重復(fù)字符的 最長子串 的長度。 示例1 輸入: abcabcbb輸...
摘要:先去空白,去掉空白之后取第一個(gè)字符,判斷正負(fù)符號(hào),若是英文直接返回,若數(shù)字則不取?;匚臄?shù)題目描述判斷一個(gè)整數(shù)是否是回文數(shù)?;匚臄?shù)是指正序從左向右和倒序從右向左讀都是一樣的整數(shù)。 JS算法題之leetcode(1~10) 前言 一直以來,前端開發(fā)的知識(shí)儲(chǔ)備在數(shù)據(jù)結(jié)構(gòu)以及算法層面是有所暫缺的,可能歸根于我們的前端開發(fā)的業(yè)務(wù)性質(zhì),但是我認(rèn)為任何的編程崗位都離不開數(shù)據(jù)結(jié)構(gòu)以及算法。因此,我作為...
摘要:無重復(fù)字符的最長子串難度中等描述給定一個(gè)字符串,請(qǐng)你找出其中不含有重復(fù)字符的最長子串的長度。輸入輸出解釋因?yàn)闊o重復(fù)字符的最長子串是,所以其長度為。 無重復(fù)字符的最長子串 難度:中等 描述: 給定一個(gè)字符串,請(qǐng)你找出其中不含有重復(fù)字符的 最長子串 的長度。 樣例: 輸入: abcabcbb 輸出: 3 解釋: 因?yàn)闊o重復(fù)字符的最長子串是 abc,所以其長度為 3。 輸入: bbbbb ...
閱讀 991·2021-11-25 09:43
閱讀 1367·2021-11-17 09:33
閱讀 3081·2019-08-30 15:44
閱讀 3381·2019-08-29 17:16
閱讀 538·2019-08-28 18:20
閱讀 1726·2019-08-26 13:54
閱讀 616·2019-08-26 12:14
閱讀 2234·2019-08-26 12:14