最长公共子序列

最长公共子序列

思路:想一想 没什么思路的话看yxc DP分析法了。这道题绝壁百分之百刷过。

AcWing 897. 最长公共子序列 - AcWing这篇题解我觉得讲的挺好的。可以多看看。

代码:

cpp 复制代码
const int N = 1010;
int dp[N][N];//dp[i][j] 表示第一个序列从1到i和第二个序列从1到j的公共子序列的集合中 的最长的值。
class Solution {

public:
    int longestCommonSubsequence(string text1, string text2) {
        for(int i=1;i<=text1.length();i++)
        {
            for(int j=1;j<=text2.length();j++)
            {
                if(text1[i-1]==text2[j-1])
                {
                    dp[i][j]=dp[i-1][j-1]+1;
                }
                else dp[i][j]=max(dp[i-1][j],dp[i][j-1]);
            }
        }
         return dp[text1.length()][text2.length()];
    }
   
};
相关推荐
ting_zh2 天前
通过 AUX 通道调试 DP Link Traning
dp·aux
longlongzihan12 天前
LeetCode 1004.最大连续1的个数III 滑动窗口及动态规划题解
c++·算法·leetcode·dp·滑动窗口
惆怅客12314 天前
UVa11640 Mayor Election
dp·fft·icpc·uva·生成函数的乘法
语戚1 个月前
力扣 1621. 大小为K的不重叠线段的数目:动态规划(Java 实现)
java·算法·leetcode·动态规划·力扣·dp
Tisfy1 个月前
LeetCode 1477.找两个和为目标值且不重叠的子数组:滑动窗口 + 记录前值(动态规划)
动态规划·题解·dp·滑动窗口
Tisfy1 个月前
LeetCode 2472.不重叠回文子字符串的最大数目:动态规划(贪心)
动态规划·字符串·题解·贪心·dp·回文字符串
a187927218311 个月前
【算法】动态规划第四篇:背包收官——min 哨兵、计数世界与组合排列分水岭
算法·leetcode·动态规划·dp·01背包·算法讲解·决策合并
a187927218311 个月前
【算法】动态规划第三篇:背包第一课——贪心之死与正序倒序开关
算法·leetcode·动态规划·贪心·dp·暴力·算法讲解
a187927218311 个月前
【算法】动态规划第五篇:区间 DP——从“看什么都像背包“到“最后戳谁“
算法·leetcode·动态规划·dp·区间·区间dp·算法讲解
a187927218311 个月前
【算法】动态规划第二篇:双序列 DP 三课——继承、计步与断链
算法·leetcode·动态规划·dp·回溯·暴力·算法讲解