题解 | #JZ48 最长不含重复字符的子字符串#
最长不含重复字符的子字符串
http://www.nowcoder.com/practice/48d2ff79b8564c40a50fa79f9d5fa9c7
```/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @return int整型
*/
function lengthOfLongestSubstring( s ) {
//遍历每一个字符当作首字符,记录每一个字符,当遇到重复字符时,记录长度,与max比较
// write code here
if(s.length===1){return 1}
let max=0
for(let i=0;i<s.length;i++){
let temp=[] //每个新的首字符,重置临时数组记录
for(let j=i;j<s.length;j++){
if(temp.indexOf(s[j])>=0){
max=max>temp.length?max:temp.length
break //注意结束此循环
}
else{temp.push(s[j])
if(j===s.length-1){max=max>temp.length?max:temp.length} //注意内循环至最后一位仍然没有遇到重复的情况
}
}
}
return max
}
module.exports = {
lengthOfLongestSubstring : lengthOfLongestSubstring
};