leetcode 1035. 不相交的线

2023.8.25

本题可以转化为:求两数组的最长公共子序列。 进而可以用dp算法解决。 方法类似于这题最长公共子序列 。 代码如下:

cpp 复制代码
class Solution {
public:
    int maxUncrossedLines(vector<int>& nums1, vector<int>& nums2) {
        vector<vector<int>> dp(nums1.size()+1,vector<int>(nums2.size()+1,0));
        for(int i=1; i<=nums1.size(); i++)
        {
            for(int j=1; j<=nums2.size(); j++)
            {
                if(nums1[i-1] == nums2[j-1]) dp[i][j] = dp[i-1][j-1] + 1;
                else dp[i][j] = max(dp[i-1][j] , dp[i][j-1]);
            }
        }
        return dp[nums1.size()][nums2.size()];
    }
};
相关推荐
m0_629494732 分钟前
LeetCode 热题 100-----13.最大子数组和
数据结构·算法·leetcode
0xR3lativ1ty8 分钟前
大模型算法原理高频题解析
算法
故事还在继续吗10 分钟前
STL 容器算法手册
开发语言·c++·算法
田梓燊10 分钟前
力扣:94.二叉树的中序遍历
数据结构·算法·leetcode
啊我不会诶11 分钟前
2023西安邀请赛vp补题
c++·算法
khalil102012 分钟前
代码随想录算法训练营Day-38动态规划06 | 322. 零钱兑换、279.完全平方数、139.单词拆分、多重背包、总结
数据结构·c++·算法·leetcode·动态规划
jimy116 分钟前
C语言历史版本和gnu扩展版本
c语言·算法·gnu
shehuiyuelaiyuehao16 分钟前
关于算法14,15解决一些问题
算法
探序基因17 分钟前
单细胞转录组Seurat去批次-FastMNN算法及大细胞量评测
linux·算法
阿Y加油吧18 分钟前
二刷 LeetCode:300. 最长递增子序列 & 152. 乘积最大子数组 复盘笔记
笔记·算法·leetcode