问题描述:
给两个整数数组 A 和 B ,返回两个数组中公共的、长度最长的子数组的长度。...示例 1:
输入:
A: [1,2,3,2,1]
B: [3,2,1,4,7]
输出: 3
解释:
长度最长的公共子数组是 [3, 2, 1]。...解决方案:
模板题直接上dp,dp[i] [j] 为A数组以 i 结尾,B数组以 j 结尾的最长公共子串长度。
...[j] \\\ dp[i - 1][j - 1] + 1 \qquad else\end{cases}
若当前A[i] 不等于 B[j]时,以A[i]结尾和以B[j]结尾的最长公共子串长度一定为...baseline:
我们发现当前位置的值依赖于其上边的值和其左边的值,因此初始化时只需填完第一行和第一列的值即可。