题解 | #最长回文子串#

最长回文子串

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

// 计算字符串的最长回文子串
function a(str) {
    let m, n, count = 0;
    for (let i = 0; i < str.length; i++) {
        // 奇数
        let c1 = b(str, i, i)
        // 偶数
        let c2 = b(str, i, i+1);
        count = Math.max(count, c1, c2);
    }
    return count;
}
// 计算m,n两个索引位置对应的最长回文子串
function b(str, m, n) {
    while(m>=0 && n<str.length && str[m] === str[n]) {
        m--;
        n++;
    }
    m = m !== -1 ? m+1:0;
    n = n ? n-1:str.length-1;
    return n-m+1;
}
const str = readline();
console.log(a(str));
全部评论

相关推荐

06-17 00:26
门头沟学院 Java
程序员小白条:建议换下项目,智能 AI 旅游推荐平台:https://github.com/luoye6/vue3_tourism_frontend 智能 AI 校园二手交易平台:https://github.com/luoye6/vue3_trade_frontend GPT 智能图书馆:https://github.com/luoye6/Vue_BookManageSystem 选项目要选自己能掌握的,然后最好能自己拓展的,分布式这种尽量别去写,不然你只能背八股文了,另外实习的话要多投,尤其是学历不利的情况下,多找几段实习,最好公司title大一点的
无实习如何秋招上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务