首页 > 其他分享 >718. 最长重复子数组

718. 最长重复子数组

时间:2023-06-05 11:34:13浏览次数:40  
标签:718 int res 重复子 数组 nums1 nums2 size

给两个整数数组 nums1 和 nums2 ,返回 两个数组中 公共的 、长度最长的子数组的长度 。


示例 1:

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

> 动态规划


class Solution {
public:
    int findLength(vector<int>& nums1, vector<int>& nums2) {
        int len1 = nums1.size();
        int len2 = nums2.size();
        int res = 0;
        vector<vector<int>> dp (nums1.size() + 1, vector<int>(nums2.size() + 1, 0));
        for(int i = 1;i <= len1;i++){
            for(int j = 1;j <= len2;j++){
                if(nums1[i-1] == nums2[j-1]){
                    dp[i][j] = dp[i-1][j-1] + 1;
                }
                if(dp[i][j] > res) res = dp[i][j];
            }
        }
        return res;
    }
};

标签:718,int,res,重复子,数组,nums1,nums2,size
From: https://www.cnblogs.com/lihaoxiang/p/17457347.html

相关文章

  • 【蓝桥杯集训·每日一题】AcWing 3805. 环形数组
    写在前面本人CSDN博客主页:这里一、题目1、原题链接3805.环形数组2、题目描述给定一个长度为n的环形数组a0,a1,…,an−1。现在要对该数组进行m次操作。操作分为以下两种:增值操作lrd,将区间[l,r]上的每个元素都增加d。求最小值操作lr,输出区间[l,r]内的所有元素的最小......
  • 6.8 数组类库支持
    demo1java.util.Arrays.sort()实现排序classArrayUtil{publicstaticvoidprintArray(inttemp[]){for(intx=0;x<temp.length;x++){System.out.print(temp[x]+",");}}}publicclassHelloWorld{p......
  • 6.7 数组转置案例分析
    利用数组角标来置换操作classArrayUtil{//数组转置操作,左右排序颠倒操作;publicstaticvoidreverse(intdata[]){intcenter=data.length/2;inthead=0;inttail=data.length-1;for(intx=0;x<center;x......
  • js数组对象转树结构
    原始数组对象:letarr=[{id:1,name:"节点1",parentId:0},{id:2,name:"节点2",parentId:1},{id:3,name:"节点3",parentId:1},{id:4,name:"节点4",parentId:2},{id:5,name:"节点5&qu......
  • 第五章 数组
    1.数组的概述‍1.1概念‍概念:是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。简称:多个数据的组合‍数组中的概念数组名下标(或索引)元素数组的长度​​‍数组的特点:数组本身是​引用数据类型​,而数组中的元......
  • 数组的均值分割
    给定你一个整数数组 nums我们要将 nums 数组中的每个元素移动到 A 数组或者 B 数组中,使得 A 数组和 B 数组不为空,并且 average(A)==average(B)首先将问题转化为求目标和为特定值将所有数乘以n减去总和,转化成为求目标值为为0的数组,同时避免出现小数情况1.折......
  • 树状数组的思想复习
    树状数组的复习前言:学树状数组的时候第一没理解透彻,第二还没写博客用于复习,所以这里写一下用于复习树状数组:作用:lognlogn时间实现单点修改区间查询;区间修改单点查询;区间修改区间查询。但是区间修改区间查询还是线段树好,因为扩展性很强特点:父子节点关系例如当前节点为x,那么......
  • Leetcode 1156. 单字符重复子串的最大长度
    题目:如果字符串中的所有字符都相同,那么这个字符串是单字符重复的字符串。给你一个字符串 text,你只能交换其中两个字符一次或者什么都不做,然后得到一些单字符重复的子串。返回其中最长的子串的长度。难度:中等示例1:输入:text="ababa"输出:3示例2:输入:text="aaabaaa"输出......
  • [USACO07JAN] Balanced Lineup G(树状数组)
    题目大意:给出长度为n的数组和q个询问,每次问(x,y)区间内最大值和最小值的差是多少思路:1.适合用树状数组做此区间求值,首先要明白普通的树状数组的tree[x]表示区间(x-(x&-x),x]的区间和,现在改为求最值,则tree[x]表示为区间(x-(x&-x),x]的最值,建树部分稍作改变即可,询问部分......
  • 交换数组
    #include<iostream>#include<iomanip>usingnamespacestd;intmain(intargc,char**argv){ inta[10][10],c,d; for(inti=1;i<=5;i++){ for(intj=0;j<5;j++){ cin>>a[i][j]; } } cin>>c>>d; for(inti=0;i<=5;......