题解 | #最长不含重复字符的子字符串#
最长不含重复字符的子字符串
http://www.nowcoder.com/practice/48d2ff79b8564c40a50fa79f9d5fa9c7
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @return int整型
*/
function lengthOfLongestSubstring( s ) {
// write code here
let dp = []
let dp2 = []
for(let key in s){
let index = parseInt(key)
if(index === 0){
dp[0] = s[0]
dp2[0] = 1.
}else{
let index2 = dp[index-1].lastIndexOf(s[index])
if(index2 === -1){
dp[index] = dp[index-1] + s[index]
}else{
dp[index] = dp[index-1].substring(index2+1) + s[index]
}
dp2[index] = dp[index].length
}
}
return Math.max.apply(null,dp2)
}
module.exports = {
lengthOfLongestSubstring : lengthOfLongestSubstring
};