动态规划-最长公共子序列
来源:互联网 发布:linux apache ab 安装 编辑:程序博客网 时间:2024/05/17 05:52
动态规划-最长公共子序列
一、问题描述
给出两个字符串,找到最长公共子序列(LCS),返回LCS的长度。
样例:
给出”ABCD” 和 “EDCA”,这个LCS是 “A” (或 D或C),返回1
给出 “ABCD” 和 “EACB”,这个LCS是”AC”返回 2
二、代码
#include <iostream>#include <cstring>using namespace std;string s1, s2;int maxLen[1000][1000];int main(){ while(cin>>s1>>s2){ int len1=s1.length(), len2= s2.length(); int i, j; for (i=0; i<=len1; i++) maxLen[i][0] = 0; for (i=0; i<=len1; i++) maxLen[0][i] = 0; for (i=1; i<=len1; i++){ for (j=1; j<=len2; j++){ //递归转递推 if (s1[i-1] == s2[j-1]) maxLen[i][j] = maxLen[i-1][j-1]+1; else maxLen[i][j] = max(maxLen[i][j-1], maxLen[i-1][j]); } } cout<<maxLen[len1][len2]<<endl; } return 0;}
0 0
- 最长公共子序列&&最长公共子串---[动态规划]
- 动态规划-最长公共子序列、最长公共子串
- 动态规划之最长公共子序列
- 动态规划 ------- 最长公共子序列
- 动态规划实现最长公共子序列
- 【动态规划】最长公共子序列LCS
- 动态规划--最长公共子序列
- 动态规划:最长公共子序列
- 动态规划解决最长公共子序列
- 最长公共子序列-动态规划DP
- 动态规划--最长公共子序列
- 最长公共子序列(动态规划)
- 动态规划解决最长公共子序列
- 最长公共子序列(动态规划)
- 动态规划 最长公共子序列
- 动态规划 - 最长公共子序列
- 动态规划之最长公共子序列
- 最长公共子序列 [动态规划]
- JS_DOM
- [USACO1.3]牛式 Prime Cryptarithm
- 以顶级域名方式发布工程
- Hive性能与调优—学习笔记[4]
- 类的继承和访问控制
- 动态规划-最长公共子序列
- editPlus激活码
- Android Studio如何创建.mk文件
- 仿微信-界面动画(2)
- Linux内核态与用户态通信的常用方法
- HDU 1023卡特兰数 模板题
- Service结合BroadcastReceiver实现跨进程通信的例子
- 【zzulioj 1922】
- STM8 最小开发板/核心板 STM8S003F3P6开发与设计效果