Home  >  Article  >  Java  >  LeetCode Maximum Length of Repeated Subarray

LeetCode Maximum Length of Repeated Subarray

坏嘻嘻
坏嘻嘻Original
2018-09-14 13:49:341837browse

This article introduces the Maximum Length of Repeated Subarray of LeetCode. I hope you will learn patiently.

Given two integer arrays A and B, return the length of the common and longest subarray in the two arrays.

Example 1:

输入:A: [1,2,3,2,1]
B: [3,2,1,4,7]输出: 3解释: 长度最长的公共子数组是 [3, 2, 1]。

Instructions:

  1. 1 <= len (A), len(B) <= 1000

  2. ##0 <= A[i], B[i] < 10

Solution, this is a classic dynamic programming algorithm, as follows:

public class MaxLengthRepeatedSubarray {
    //动态规划算法
    public static int findLength(int[] A, int[] B) {
        int aSize = A.length;
        int bSize = B.length;
        int[][] dp = new int[aSize + 1][bSize + 1];
        int result = 0;
        for (int i = 1; i < dp.length; i++) {
            for (int j = 1; j < dp[i].length; j++) {
                dp[i][j] = A[i - 1] == B[j - 1] ? dp[i - 1][j - 1] + 1 : 0;
                result = Math.max(result, dp[i][j]);
            }
        }
        return result;
    }

    public static void main(String[] args) {
        int[] a = new int[]{1, 2, 3, 2, 1};
        int[] b = new int[]{3, 2, 1, 4, 7};
        System.out.println(findLength(a, b));
    }
}

Related recommendations:

LeetCode 2 Evaluate Reverse Polish Notation

python Problem using list of lists to represent matrices?

The above is the detailed content of LeetCode Maximum Length of Repeated Subarray. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn