最长公共子序列

最长公共子序列

思路:想一想 没什么思路的话看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()];
    }
   
};
相关推荐
dengqingrui1231 个月前
【树形DP】AT_dp_p Independent Set 题解
c++·学习·算法·深度优先·图论·dp
疯狂的小强呀1 个月前
超详细讲解:DP和DDP的区别以及使用方法
算法·dp·ddp
Jcqsunny1 个月前
[dp] 小信走迷宫
算法·前缀和·动态规划·dp
源代码•宸2 个月前
Leetcode—322. 零钱兑换【中等】(memset(dp,0x3f, sizeof(dp))
c++·算法·leetcode·职场和发展·dp
Qres8212 个月前
[SCOI2014] 方伯伯的玉米田(dp+树状数组维护行列)
数据结构·dp·ds
源代码•宸2 个月前
Leetcode—72. 编辑距离【中等】
c++·算法·leetcode·dp
sweetheart7-72 个月前
LeetCode152. 乘积最大子数组(2024秋季每日一题 2)
数据结构·算法·动态规划·dp·每日一题
源代码•宸3 个月前
Leetcode—1143. 最长公共子序列【中等】
c++·经验分享·算法·leetcode·dp
rgw20103 个月前
P1973 [NOI2011] NOI 嘉年华
指针·dp·noi·线段树优化 dp