动态规划算法-两个数组的dp(含字符串数组):41.最长公共子序列(模板)

题目链接:1143. 最长公共子序列(中等)

算法原理:

解法:动态规划

Java代码:

java 复制代码
/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 王洋
 * Date: 2025-10-26
 * Time: 17:12
 */
class Solution {
    //1143. 最长公共子序列(模板题)
    //看完算法原理自己写的," "没注意要加空格,另外i和j要从1开始,别的就没啥问题了
    //跟吴小哲写的一样
    public int longestCommonSubsequence(String s1, String s2) {
        int m=s1.length(),n=s2.length();
        s1=" "+s1;s2=" "+s2;
        int[][] dp=new int[m+1][n+1];
        for(int i=1;i<=m;i++){
            for(int j=1;j<=n;j++){
                if(s1.charAt(i)==s2.charAt(j)) dp[i][j]=dp[i-1][j-1]+1;
                else dp[i][j]=Math.max(dp[i][j-1],dp[i-1][j]);
            }
        }
        return dp[m][n];
    }
}
相关推荐
一楼的猫3 小时前
从工具链视角对比:番茄作家助手 vs 第三方写作辅助方案
java·服务器·开发语言·前端·学习·chatgpt·ai写作
likerhood3 小时前
Java static 关键字从浅入深
java·开发语言
_院长大人_4 小时前
Java Excel导出:如何实现自定义表头与字段顺序的完全控制
java·开发语言·后端·excel
ʚ希希ɞ ྀ4 小时前
单词拆分----dp
算法
磊 子4 小时前
1.4CPU缓存一致性
java·spring cloud·缓存·系统
周末也要写八哥4 小时前
Eclipse 2024全流程网盘下载与安装配置教程详解
java·ide·eclipse
来恩10034 小时前
JSTL的标签库种类
java·开发语言
图像僧4 小时前
vs2019中的属性页使用说明
java·开发语言·jvm
武子康4 小时前
Java-03 深入浅出 MyBatis 增删改查与映射配置详解
java·后端
静心观复4 小时前
.puml文件是什么,怎么用
java