力扣-最长回文子串

给你一个字符串 s,找到 s 中最长的 回文 子串。

示例 1:

复制代码
输入:s = "babad"
输出:"bab"
解释:"aba" 同样是符合题意的答案。

示例 2:

复制代码
输入:s = "cbbd"
输出:"bb"

提示:

  • 1 <= s.length <= 1000
  • s 仅由数字和英文字母组成

实现代码:

javascript 复制代码
/**
 * @param {string} s
 * @return {string}
 */
var longestPalindrome = function(s){
    const n = s.length;
    if (n < 2) return s;
    const dp = new Array(n).fill(false).map(() => new Array(n).fill(false));
    let maxLen = 1;
    let begin = 0;
    for (let i = 0; i < n; i++) {
        dp[i][i] = true;
    }
    for (let L = 2; L <= n; L++) {
        for (let i = 0; i < n; i++) {
            const j = i + L - 1;
            if (j >= n) break;
            
            if (s[i] !== s[j]) {
                dp[i][j] = false;
            } else {
                if (j - i < 3) {
                    dp[i][j] = true;
                } else {
                    dp[i][j] = dp[i + 1][j - 1];
                }
            }
            if (dp[i][j] && L > maxLen) {
                maxLen = L;
                begin = i;
            }
        }
    }
   return s.substring(begin, begin + maxLen);
};
相关推荐
NAGNIP7 小时前
大模型框架性能优化策略:延迟、吞吐量与成本权衡
算法
美团技术团队8 小时前
LongCat-Flash:如何使用 SGLang 部署美团 Agentic 模型
人工智能·算法
Fanxt_Ja13 小时前
【LeetCode】算法详解#15 ---环形链表II
数据结构·算法·leetcode·链表
侃侃_天下13 小时前
最终的信号类
开发语言·c++·算法
茉莉玫瑰花茶13 小时前
算法 --- 字符串
算法
博笙困了13 小时前
AcWing学习——差分
c++·算法
NAGNIP13 小时前
认识 Unsloth 框架:大模型高效微调的利器
算法
NAGNIP13 小时前
大模型微调框架之LLaMA Factory
算法
echoarts13 小时前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
Python技术极客13 小时前
一款超好用的 Python 交互式可视化工具,强烈推荐~
算法