求公共最长子序列
来源:互联网 发布:java项目开发视频 编辑:程序博客网 时间:2024/05/19 23:53
题目属于老题,就不再复述了,直接贴代码。
/* LCS公共最大子序列 dp[i][j]=0;//i=0||j=0时。 dp[i][j]=dp[i-1][j-1]+1;//s[i]==t[j]时 dp[i][j]=max(dp[i-1][j],dp[i][j-1]);//s[i]!=t[j]时 根据这个规律很容易写出代码*/#include<iostream>#include<cstring>using namespace std;const int MAX=100;int swap(int &a,int &b){ int tmp=a; a=b; b=tmp;}int LCS(const char *str1,const char *str2){ int dp[MAX][MAX]; int len1=strlen(str1); int len2=strlen(str2); if(len1==0||len2==0) return 0; for(int i=0;i<=len1;++i) dp[i][0]=0; for(int j=0;j<=len2;++j) dp[0][j]=0; for(int i=1;i<=len1;i++) { for(int j=1;j<=len2;j++) { if(str1[i]==str2[j]) dp[i][j]=dp[i-1][j-1]+1; else dp[i][j]=max(dp[i-1][j],dp[i][j-1]); } } return dp[len1][len2];}int main(){ char *str="ABCBDAB"; char *str1="BDCABA"; cout<<LCS(str,str1)<<endl; return 0;}
0 0
- 求最长公共子序列
- 求公共最长子序列
- 求最长公共子序列
- 求最长公共子序列
- 求最长公共子序列
- 求最长公共子序列
- 求最长公共子序列
- 求最长公共子序列
- 求公共最长子序列
- 求最长公共子序列
- 求最长公共子序列(LCS)
- POJ3080_Blue Jeans_KMP_求最长公共子序列
- 求两字符串最长公共子序列
- 笔试:求最长公共子序列
- 动态规划求最长公共子序列
- 【动态规划】求最长公共子序列
- 动态规划:求最长公共子序列
- 【基础算法】求最长公共子序列
- batch 截取字符串
- Linux Yum安装配置与安装命令应用
- POJ 1269 Intersecting Lines(判断直线相交)
- Fedora yum光盘安装及运行命令
- 锂电池的六个主要参数
- 求公共最长子序列
- 开启博客之旅
- 网络结构----ISO/OSI七层网络模型和TCP/IP四层网络模型
- 如何使用SecureCRT连接vmware下ubuntu 和vmware下ubuntu不能联网的解决办法
- 使用HTML5和jQuery插件Reel实现一个超酷的星际争霸2兵种动画360度预览效果
- 奇怪的电梯解题报告(广度优先搜索)
- HDU 4946 Area of Mushroom(凸包)
- Broadcast Receiver
- Building External Modules