1.题目描述
给两个整数数组 A 和 B ,返回两个数组中公共的、长度最长的子数组的长度。...示例:
输入:
A: [1,2,3,2,1]
B: [3,2,1,4,7]
输出:3
解释:
长度最长的公共子数组是 [3, 2, 1] 。...,固定数组的起始位置为0,滑动数组起始位置和重合部分的长度要进行计算。...那么可以推导除,如果存在这么一个子数组,那么其左上角的点构成的连续长度肯定比加上这个点构成的连续长度少1。...可以用如下公式表示:
在新组成的二维数组ad中,连续子数组上的点dp[i][j]=dp[i-1][j-1]+1
?
那么很容易想到了动态规划,之后如果存在一个点就加1,之后将最大的值得出。