代码随想录算法训练营第57天 | 647. 回文子串 516.最长回文子序列

一、Leetcode 647. 回文子串

这个双指针很好想。但是要注意只遍历上三角,并且还得从下往上,自左向右遍历

二、Leetcode 516.最长回文子序列

遍历顺序和上题一样,问题在于子序列不连续,那么体现在递推公式上。

if (s[i] == s[j]) {
    dp[i][j] = dp[i + 1][j - 1] + 2;
} else {
    dp[i][j] = max(dp[i + 1][j], dp[i][j - 1]);
}

你可能感兴趣的:(刷题,算法,leetcode,动态规划)