题解 | #最长回文子串#

最长回文子串

http://www.nowcoder.com/practice/12e081cd10ee4794a2bd70c7d68f5507

let str = readline()

let len = str.length
let dp = new Array(len).fill(false).map(()=>{
    return new Array(len).fill(false)
})

for(let i = 0; i < len; i++){
   dp[i][i] = true  
}

let maxLen = 1

for(let j = 1; j < len; j++){
    for(let i = 0; i < j; i++){
        
        if(str[i] !== str[j]){
            dp[i][j] = false
        }else{
            if(j - i <= 2){
                dp[i][j] = true
            }else{
                dp[i][j] = dp[i+1][j-1]
            }
        }
        
        if(dp[i][j] && j-i+1 > maxLen){
            maxLen = j - i + 1
        }
    }
}

console.log(maxLen)
全部评论

相关推荐

05-12 11:09
已编辑
门头沟学院 后端
SmileDog12138:没必要放这么多专业技能的描述。这些应该是默认已会的,写这么多行感觉在凑内容。项目这块感觉再包装包装吧,换个名字,虽然大家的项目基本都是网上套壳的,但是你这也太明显了。放一个业务项目,再放一个技术项目。技术项目,例如中间件的一些扩展和尝试。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务