C++ | Leetcode C++题解之第516题最长回文子序列

题目:

题解:

cpp 复制代码
class Solution {
public:
    int longestPalindromeSubseq(string s) {
        int n = s.length();
        vector<vector<int>> dp(n, vector<int>(n));
        for (int i = n - 1; i >= 0; i--) {
            dp[i][i] = 1;
            char c1 = s[i];
            for (int j = i + 1; j < n; j++) {
                char c2 = s[j];
                if (c1 == c2) {
                    dp[i][j] = dp[i + 1][j - 1] + 2;
                } else {
                    dp[i][j] = max(dp[i + 1][j], dp[i][j - 1]);
                }
            }
        }
        return dp[0][n - 1];
    }
};
相关推荐
会周易的程序员25 分钟前
软件接入大模型实现 Agent —— 从原理到 C++ 落地完全指南
c++·人工智能·物联网·架构·agent·工业协议·mcp
hetao173383743 分钟前
2026-08-21~23 hetao1733837 的刷题记录
c++·算法
青 春 记 忆1 小时前
LeetCode 206. 反转链表|Python 解法详解
python·leetcode·链表
青 春 记 忆3 小时前
LeetCode 226. 翻转二叉树|Python 解法详解
python·算法·leetcode
Brilliantwxx3 小时前
【Linux】 进程(5) 僵尸进程与内存泄漏扩展
linux·运维·服务器·网络·c++
程与留4 小时前
08_对话框系统全解析——模态非模态、QMessageBox、QFileDialog
c++·qt
程序员的园4 小时前
赋值运算符为什么要避免自赋值?
c++
Escalating_xu4 小时前
【C++ vector 深度解析】从常用接口、扩容机制与迭代器失效到核心模拟实现
java·c++·面试
啊嘞嘞?4 小时前
力扣(回文链表)
算法·leetcode·链表