718. Maximum Length of Repeated Subarray
Last updated
Last updated
/**
* Time complexity : O(M∗N), where M, N are the lengths of A, B.
* Space complexity : O(M∗N), the space used by dp.
*/
class Solution {
public int findLength(int[] nums1, int[] nums2) {
if(nums1 == null || nums2 == null) {
return 0;
}
int n1 = nums1.length, n2 = nums2.length;
int[][] dp = new int[n1+1][n2+1];
int maxLen = 0;
for(int i = 1; i <= n1; i++) {
for(int j = 1; j <= n2; j++) {
if(nums1[i-1] == nums2[j-1]) {
dp[i][j] = 1 + dp[i-1][j-1];
maxLen = Math.max(maxLen, dp[i][j]);
}
}
}
return maxLen;
}
}