sjfb.net
当前位置:首页 >> C++用动态规划求3个字符串的最长公共子序列的状态... >>

C++用动态规划求3个字符串的最长公共子序列的状态...

#include #include using namespace std; int maxSubSum(const vector & arr,int &begin,int &end){ int maxSum=0; int currSum=0; int newbegin=0; for(int i=0;imaxSum){ maxSum=currSum; begin=newbegin; end=i; } if(currSum

不是我不想帮你,但如果真要改的话,整个程序差不多要重写了……首先你要确定此程序是上网刷题/比赛?还是自学算法知识?如果你有很好的数学功底还可以自学知识,但比赛的话自学是绝对不够的,那需要充分的交流,还有,养成良好的编程风格是一个极...

最长公共子串问题:一个给定序列的子序列是在该序列中删去若干元素后得到的序列。给定两个序列X和Y,当另一序列Z既是X的子序列又是Y的子序列时,称Z是序列X和Y的公共子序列。最长公共子串就是求给定两个序列的一个最长公共子序列。例如,X=“ABCB...

规划内容: 实验四:动态规划 实验目的:理解动态规划的基本思想,理解动态规划算法的两个基本要素最优子结构性质和子问题的重叠性质。熟练掌握典型的动态规划问题。掌握动态规划思想分析问题的一般方法,对较简单的问题能正确分析,设计出动态...

最长公共子串问题:一个给定序列的子序列是在该序列中删去若干元素后得到的序列。给定两个序列X和Y,当另一序列Z既是X的子序列又是Y的子序列时,称Z是序列X和Y的公共子序列。最长公共子串就是求给定两个序列的一个最长公共子序列。

自己看书。

// 求LCS的长度 class LCS { public: LCS(int nx, int ny, char *x, char*y); //创建二维数组c、s和一维数组a、b,并进行初始化 void LCSLength(); //求最优解值(最长公共子序列长度) void CLCS(); //构造最优解(最长公共子序列) …… private...

楼主的思路错了,你的代码我就不看了。。 就是动态规划。。 辅助空间变化示意图。。 a b c f b c a 1 1 1 1 1 1 b 1 2 2 2 2 2 f 1 2 2 3 3 3 c 1 2 3 3 3 4 a 1 2 3 3 3 4 b 1 2 3 3 4 4 子结构特征: f(i,j)= 1. f(i-1,j-1)+1 (a[i]==b[j]) 或...

最长公共子串问题:一个给定序列的子序列是在该序列中删去若干元素后得到的序列。给定两个序列X和Y,当另一序列Z既是X的子序列又是Y的子序列时,称Z是序列X和Y的公共子序列。最长公共子串就是求给定两个序列的一个最长公共子序列。例如,X=“ABCB...

网站首页 | 网站地图
All rights reserved Powered by www.sjfb.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com