最长连续公共子序列---动态规划
来源:互联网 发布:mysql事务锁 编辑:程序博客网 时间:2024/05/21 16:12
对于两个字符串,请设计一个高效算法,求他们的最长公共子序列的长度,
不要求字符连续
给定字符串A和B,请返回最长公共子序列的长度。保证两串长度均小于等于300。
测试样例:
1A2C3D4B56
B1D23CA45B6A
返回:6
public class 最长公共子序列 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); String A=sc.next(); String B=sc.next(); sc.close(); int n=A.length(); int m=B.length(); char a[]=A.toCharArray(); char b[]=B.toCharArray(); int[][] dp=new int[n + 1][m + 1]; //为字符串A的第一个字符到第 i 个字符串和字符串B的第一个字符串到第 j 个字符串的最长公共子序列 for (int i=1;i<=n;i++) { for (int j=1;j<= m;j++){ if (a[i-1]==b[j-1]){ dp[i][j]=dp[i-1][j-1]+1; }else{ dp[i][j]=Math.max(dp[i-1][j],dp[i][j-1]); } } } System.out.println(dp[n][m]); }}
阅读全文
0 0
- 最长连续公共子序列---动态规划
- 动态规划 最长公共子序列LCS、最长公共连续子串、最长重复子串
- 动态规划 之 最长公共子序列(非连续)
- 动态规划之最长连续公共子序列
- 最大子序列、最长连续公共子串(连续)、最长公共子序列(动态规划)
- 动态规划-----最长公共连续子串
- 动态规划实现最大连续子序列和,最长不下降子序列和最长公共子序列
- 最长公共子序列&&最长公共子串---[动态规划]
- 动态规划-最长公共子序列、最长公共子串
- 动态规划之最长公共子序列
- 动态规划 ------- 最长公共子序列
- 动态规划实现最长公共子序列
- 【动态规划】最长公共子序列LCS
- 动态规划--最长公共子序列
- 动态规划:最长公共子序列
- 动态规划解决最长公共子序列
- 最长公共子序列-动态规划DP
- 动态规划--最长公共子序列
- javascript年月日时间(包括判断闰年)
- 产品上线的前戏:可用性测试(包含关键维度分析及过程)
- 同一个tomcat配置多个端口对应不同的app
- 关于Arcgis Pro2.0的申请与使用(含2.0网盘分享)
- Hog,SIFT以及LBP这三种特征有什么不同?
- 最长连续公共子序列---动态规划
- CSS max-width 属性
- APUE读书笔记-第十四章-高级I/O
- Git-分支管理
- XHTML中,js的CData片段出现的解析
- 基于pthread的C++阻塞队列模板类的实现
- Uncaught ReferenceError: resource is not defined at HTMLAnchorElement.onclick (learn_demo01.html
- Source Insight 如何显示C++中的类方法----备忘
- hibernate与mybatis异同与比较(涵盖网上各个版本,清晰明了)