Algorithm学习笔记 --- 最长公共子序列(DP-动态规划实现)

来源:互联网 发布:有什么育儿软件 编辑:程序博客网 时间:2024/06/06 02:34

状态转移方程为:

f[1][1] = same(1,1);
f[i,j] = max{f[i-1][j -1] + same(i,j),f[i-1,j],f[i,j-1]}
若上述公式中same(1,1)相同时,same(x,y)的值为1,否则为 0;



完整源码可以去我的GitHub下ACM项目里面下载。





主函数:


int main(){while(cin >> str1 >> str2){int len1 = strlen(str1);int len2 = strlen(str2);cout << LCSL(len1, len2) << endl;}return 0;}


测试用例:




原创粉丝点击