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];
    }
};
相关推荐
一拳一个呆瓜2 小时前
【STL】_SCL_SECURE_NO_WARNINGS
c++·stl
小小编程路3 小时前
C++ 异常 完整讲解
开发语言·c++
一只齐刘海的猫5 小时前
【Leetcode】找到字符串中所有字母异位词
算法·leetcode·职场和发展
Frank学习路上6 小时前
【C++】面试:关键字与语法特性
c++·面试
Irissgwe6 小时前
数据结构-栈和队列
数据结构·c++·c·栈和队列
凌波粒7 小时前
LeetCode--108.将有序数组转换为二叉搜索树(二叉树)
算法·leetcode·职场和发展
点云侠7 小时前
PCL 生成三棱锥点云
c++·算法·最小二乘法
兰令水7 小时前
leecodecode【面试150】【2026.6.13打卡-java版本】
java·算法·leetcode
临沂堇8 小时前
刷题日志 | Leetcode Hot 100 哈希
算法·leetcode·哈希算法
.道阻且长.8 小时前
C++ string 操作指南:接口解析
java·c语言·开发语言·c++