- 博客(1)
- 收藏
- 关注
原创 C++ 求解最长公共子序列(不仅仅求出其大小)(简单易懂!!!)(动态规划)
在先前我们已经得出了dp数组的完整数值,我们可以使用dp数组的值递归来解决,我们先准备一个空数组,假如S1[i]==S[j],那么我们就可以直接把这个值记录到数组里,假如他们不相等,那么就是上面的情况了分别是i不在和j不在。这样重复递归,当i等于0或者j为0时停止递归。假如S1[i]==S2[j]不相等的话,那么会出现两种情况,要知道最大子序列是两者共有的,那么i和j不相等,他们之中一定有一个不在子序列当中,所以要么i不在,要么j不在,i不在那么我们就从i-1开始找,j不在我们就从j-1开始找。
2023-05-11 23:48:22
1034
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人