首页 > 试题广场 >

无重复字符的最长子串

[编程题]无重复字符的最长子串
  • 热度指数:2667 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解

给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。


输入描述:

一行一个字符串,长度不超过1000



输出描述:

输出一个数字表示最长子串的长度

示例1

输入

abcabcbb

输出

3

说明

因为无重复字符的最长子串是"abc",所以其长度为3.

var str = readline()
var res = 0
var newS = []
for(var i=0;i<str.length;i++){
    if(newS.indexOf(str[i]) == -1){
        newS.push(str[i])
    }else{
        newS.shift()
        i--
    }
    res = Math.max(res,newS.length)
}
console.log(res)

发表于 2020-08-13 11:40:28 回复(1)