给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。

一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。

例如,“ace” 是 “abcde” 的子序列,但 “aec” 不是 “abcde” 的子序列。
两个字符串的 公共子序列 是这两个字符串所共同拥有的子序列。

示例 1:

输入:text1 = “abcde”, text2 = “ace”
输出:3
解释:最长公共子序列是 “ace” ,它的长度为 3 。

解题思路

dp[i][j]数组记录的是text1的前i个和text2的前j个的最大公共子序列

代码

class Solution {public int longestCommonSubsequence(String text1, String text2) {int n=text1.length(),m=text2.length();int[][] dp = new int[n+1][m+1];for (int i=1;i<=n;i++)for(int j=1;j<=m;j++)dp[i][j]=text1.charAt(i-1)==text2.charAt(j-1)?dp[i-1][j-1]+1:Math.max(dp[i-1][j],dp[i][j-1]);return dp[n][m];}
}

leetcode 1143. 最长公共子序列(dp)相关推荐

  1. LeetCode——1143. 最长公共子序列(Longest Common Subsequence)[中等]——分析及代码(Java)

    LeetCode--1143. 最长公共子序列[Longest Common Subsequence][中等]--分析及代码[Java] 一.题目 二.分析及代码 1. 动态规划 (1)思路 (2)代 ...

  2. LeetCode 1143. 最长公共子序列(动态规划)

    1. 题目 给定两个字符串 text1 和 text2,返回这两个字符串的最长公共子序列的长度. 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符 ...

  3. leetcode - 1143. 最长公共子序列

    给定两个字符串 text1 和 text2,返回这两个字符串的最长公共子序列. 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何 ...

  4. Leetcode 1143.最长公共子序列(求长度)

    Time: 20190906 Type: Medium 题目描述 给定两个字符串text1和text2,返回它们的最长公共子序列. 子序列是通过原字符串删除一些字符(可以不删)生成的新的字符串,不改变 ...

  5. leetcode 1143. 最长公共子序列

    难度:中等 频次:64 **题目:**给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度.如果不存在 公共子序列 ,返回 0 . 一个字符串的 子序列 是指这样一个 ...

  6. 116. Leetcode 1143. 最长公共子序列 (动态规划-子序列问题)

    步骤一.确定状态: 确定dp数组及下标含义 dp[i][j]:长度为[0, i - 1]的字符串text1与长度为[0, j - 1]的字符串text2的最长 公共子序列为dp[i][j] 步骤二.推 ...

  7. 【动态规划】LeetCode 1143最长公共子序列

    题目链接:力扣 思路: 动态规划: dp[i][j]表示text1[0:i) 和 text2[0:j)的最长公共子序列的长度 上述表示中,text1[0:i)的长度为i的前缀,text2[0:j)表示 ...

  8. LeetCode 1143 最长公共子序列

    给定两个字符串 text1 和 text2,返回这两个字符串的最长公共子序列的长度. 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删 ...

  9. LeetCode 1035. 不相交的线(最长公共子序列DP)

    文章目录 1. 题目 2. 解题 1. 题目 我们在两条独立的水平线上按给定的顺序写下 A 和 B 中的整数. 现在,我们可以绘制一些连接两个数字 A[i] 和 B[j] 的直线,只要 A[i] == ...

最新文章

  1. 如何有效防止DEDE织梦系统被挂木马安全设置(仅供参考)
  2. pythonclass全局变量_python怎么使用全局变量
  3. dll注入工具_UnmanagedPowerShell工具分析
  4. 中本聪研究所创始人对Core的发展方向感到厌恶
  5. 15万个监控摄像头被黑,医院、学校、监狱都被看得一清二楚
  6. 基于easyui开发Web版Activiti流程定制器详解(六)——Draw2d的扩展(三)
  7. 三个梯度磁场_第二节 梯度磁场系统
  8. oracle wms连不上,几个WMS的问题处理
  9. ImportError: cannot import name ‘Optional‘
  10. 浅析 C++智能指针和 enable_shared_from_this 机制
  11. Linux进阶之排错
  12. 微星主板黑苹果_AMD黑苹果主机金牌装机单
  13. 【Android实习】20场面试斩获大厂offer,我学会了什么
  14. 2015证监会——李彦宏演讲
  15. 程序员的英语学习指南
  16. 关于浮点运算和定点运算
  17. 用计算机房的英语造句简单,用英语造句子elder.doc
  18. 触摸屏怎么禁止浏览器窗口的缩放
  19. 007数据分析能力:业务题
  20. 科林明伦杯哈尔滨理工大学第九届程序设计竞赛

热门文章

  1. 【干货】mysql建表语句注释
  2. linux 磁盘管理3板斧,Linux磁盘管理三板斧的使用心得
  3. 51nod1270(dp)
  4. 第六十二节,html分组元素
  5. Android NDK编程,引入第三方.so库
  6. 新书《编写可测试的JavaScript代码 》出版,感谢支持
  7. eclipse常用的快捷键
  8. 一、策略模式(Strategy Pattern)
  9. 最新的Windows phone Developer tools RTW 发布了
  10. 网页中层或菜单被Flash挡住的解决办法