动态规划:
class Solution {
public:
int findLength(vector<int>& A, vector<int>& B)
{
int a = A.size();
int b = B.size();
int max_L = 0;
vector<vector<int>> dp(a + 1, vector<int> (b + 1, 0));
for(int i = 1; i <= a; ++i)
{
for(int j = 1; j <= b; ++j)
{
if(A[i - 1] == B[j - 1])
{
dp[i][j] = dp[i - 1][j - 1] + 1;
max_L = max(max_L, dp[i][j]);
}
}
}
return max_L;
}
};