lintcode-最长公共子序列-77
2015-09-10 21:09
288 查看
给出两个字符串,找到最长公共子序列(LCS),返回LCS的长度。
样例
给出"ABCD" 和
"EDCA",这个LCS是
"A" (或 D或C),返回1
给出 "ABCD" 和
"EACB",这个LCS是"AC"返回 2
注意:
序列可以不连续。
样例
给出"ABCD" 和
"EDCA",这个LCS是
"A" (或 D或C),返回1
给出 "ABCD" 和
"EACB",这个LCS是"AC"返回 2
注意:
序列可以不连续。
class Solution { public: int longestCommonSubsequence(string A, string B) { if(A.empty()||B.empty()) return 0; int dp[A.length()+1][B.length()+1]; memset(dp,0,sizeof(dp)); int n=A.length(); int m=B.length(); int maxp=INT_MIN; 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]=max(dp[i-1][j],dp[i][j-1]); maxp=max(dp[i][j],maxp); } return maxp; } };
相关文章推荐
- COCI CONTEST #3 29.11.2014 T2 DOM
- 【LeetCode】Simplify Path 解题报告
- web workers简介
- COCI CONTEST #3 29.11.2014 T1 STROJOPIS
- 轻量级.Net开源日志组件--AHCT.Log.NLogger
- jQuery学习笔记——弹出对话框
- Tomcat搭建资源服务器
- UIlabel
- Android Serialiable 与 Parcelable 区别
- 黑马程序员——ios开发基础之C语言数据类型、运算符与输入输出
- Pixel binning
- HDU3068最长回文
- Android PopupWindow 仿微信点赞和评论弹出框
- 数据模型及类目
- 虚拟机联网问题
- php中urlencode空格变成+号解决方法
- Minimum Path Sum
- notification 点击响应 以及启动activity的坑
- POJ 2184 Cow Exhibition (处理负值的01背包)
- 《剑指offer》数值的整数次方