1. 程式人生 > >尋找字串最長不重複的子串

尋找字串最長不重複的子串

例子:1、字串“abcabcbb”,最長子串是“abc”,長度是3;

   2、字串“bbbb”,最長子串是“b”,長度是1;

   3、字串“pwwkew”,最長子串是“wek”,長度是3;

程式是:

var lengthOfLongest = function (s){
if(s ==='') return 0;
var len = s.length,l = len,RErepeat = /(.).*\1/;
while(l>1){
for (var i = 0; i < len-l+1; i++) {
var temp = s.substr(i,l);
if(!RErepeat.test(temp)) return temp;
}
l--;
}
if(l===1) return 1;
}
console.log(lengthOfLongest('abcabcbb'));

輸出結果是  “abc”。