最长公共子序列,记忆化搜索
来源:互联网 发布:怎么增强JS的兼容性 编辑:程序博客网 时间:2024/06/05 04:00
#include <iostream>#include <string>using namespace std;const int maxn=100;int max(int i,int j){ return i>j?i:j;}string s1,s2;int d[maxn][maxn];//记忆化搜索void dfs(int i,int j){ if(i>=s1.size()||j>=s2.size()) return; else if(s1[i]==s2[j]) d[i+1][j+1]=d[i][j]+1; else d[i+1][j+1]=max(d[i][j+1],d[i+1][j]); dfs(i+1,j); dfs(i,j+1);}//运用DP来做void dfs2(){ for(int i=0;i<s1.size();i++) { for(int j=0;j<s2.size();j++) { if(s1[i]!=s[j]) d[i+1][j+1]=max(d[i][j+1],d[i+1][j]); else d[i+1][j+1]=d[i][j]+1; } }}int main(){ for(int i=0;i<maxn;i++) { for(int j=0;j<maxn;j++) d[i][j]=0; } cin>>s1>>s2; dfs(0,0); //dfs2(); cout<<d[s1.size()][s2.size()]; return 0;}
0 0
- 最长公共子序列,记忆化搜索
- hdu 1503 + 简单dp ( 最长公共子序列型)+记忆化搜索+stl
- (POJ 1159)Palindrome <最长公共子序列 / 滚动数组优化 / 记忆化搜索> 简单回文数
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列...
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 最长公共子序列
- 文章标题
- android studio 2.0Stable (正式版下载)
- yum中的python版本错误(转载)
- 用空瓶和瓶盖换酒喝
- PHP文件上传的实现及其介绍
- 最长公共子序列,记忆化搜索
- HTTPS原理
- 【C++】《More Effective C++》读书笔记(转载+修订)
- 1113. Integer Set Partition (25)
- 狸猫的笔试——格雷码判断
- The 11th Zhejiang Provincial Collegiate Programming Contest
- 九度 1007
- UVA 1452Jump 【约瑟夫环】
- Boostrap框架学习总结