公共字串计算
来源:互联网 发布:排列组合公式算法p 编辑:程序博客网 时间:2024/06/06 09:56
//方法一:时间复杂度O(n2),空间复杂度O(n)#include<bits/stdc++.h>using namespace std;int main(){ string a,b; int dp[100000]; while(cin>>a>>b) { memset(dp,0,sizeof(dp)); int Max=0; for(int i=1; i<=a.size(); i++) for(int j=b.size(); j>=1; j--) //逆序 if(a[i-1]==b[j-1]) { dp[j]=dp[j-1]+1; if(dp[j]>Max)Max=dp[j]; } else dp[j]=0;//此处改为dp[j]=dp[j-1];则变为最长公共子序列 cout<<Max<<endl; } return 0;}//方法二:时间复杂度O(n2),空间复杂度O(n2)#include<bits/stdc++.h>using namespace std;int main(){ string a,b; int dp[1000][1000]; while(cin>>a>>b) { memset(dp,0,sizeof(dp)); int Max=0; for(int i=1; i<=a.size(); i++) for(int j=1; j<=b.size(); j++) //顺序 if(a[i-1]==b[j-1]) { dp[i][j]=dp[i-1][j-1]+1; if(dp[i][j]>Max)Max=dp[i][j]; } else dp[i][j]=0;//此处改为dp[j]=dp[j-1];则变为最长公共子序列 cout<<Max<<endl; } return 0;}
阅读全文
0 0
- 公共字串计算1
- 公共字串计算
- 公共字串计算
- 公共字串计算
- 公共字串计算
- 公共字串计算
- 公共字串计算
- 华为OJ: 公共字串计算
- 华为上机 公共字串计算
- [华为oj]计算公共字串
- 华为oj 公共字串计算
- 华为oj 公共字串计算
- 计算最长公共数字串个数
- 华为OJ——公共字串计算
- 华为OJ 初级:公共字串计算
- 华为OJ——公共字串计算
- 【华为OJ】公共字符字串计算
- 华为OJ——公共字串计算
- python2.7基于selenium的web自动化测试项目--user目录
- UVa 11054
- 读《世界精英带人术》赤羽雄二
- 基于 maven 的 ssm 项目搭建七:初探 druid
- DCL DML DDL
- 公共字串计算
- 二进制有符号数加法
- Oracle中SQL语句执行计划,调优
- 【视频开发】ffmpeg 的编译选项
- 苹果强势:取消热更新Or下架
- SQL四种语言:DDL,DML,DCL,TCL
- gulp项目搭建流程
- 【JavaScript】创建对象的七种方式
- c++数组名是一个指针常量