力扣 1035. 不相交的线

题目来源:https://leetcode.cn/problems/uncrossed-lines/description/

C++题解:经过细细一推导,就发现跟力扣 1143. 最长公共子序列-CSDN博客 换汤不换药。

直线不能相交,说明元素顺序不能改变,求可以绘制的最大连线数,即最长公共子序列。

cpp 复制代码
class Solution {
public:
    int maxUncrossedLines(vector<int>& nums1, vector<int>& nums2) {

        int n1 = nums1.size(), n2 = nums2.size();
        vector<vector<int>> dp(n1+1, vector<int>(n2+1, 0));
        for(int i = 0; i < n1; i++){
            for(int j = 0; j < n2; j++) {
                if(nums1[i] == nums2[j]) {
                    dp[i+1][j+1] = dp[i][j]+1;
                }
                else {
                    dp[i+1][j+1] = max(dp[i][j+1], dp[i+1][j]);
                }
            }
        }
        return dp[n1][n2];
    }
};
相关推荐
一只旭宝19 小时前
【C++入门精讲22】常见设计模式
c++·设计模式
JAVA面经实录91719 小时前
Java 数据结构与算法 (终极完整学习文档)
java·数据结构·算法
c++之路20 小时前
Bazel C++ 构建系列文档(三):构建第一个 C++ 项目
开发语言·c++
开源Z20 小时前
LeetCode 42 · 接雨水:从暴力到双指针的三步优化
算法·leetcode
旖-旎20 小时前
《LeetCode 695 岛屿的最大面积 FloodFill DFS 解法》
c++·算法·力扣·深度优先遍历·floodfill
森G21 小时前
61、信号与槽机制在 TCP 编程中的应用---------网络编程
网络·c++·qt·网络协议·tcp/ip
syagain_zsx21 小时前
STL 之 vector 讲练结合
c++·算法
牛油果子哥q21 小时前
STL set与map底层精讲,红黑树适配原理、有序去重特性、迭代器遍历、API实战与面试核心考点全解
开发语言·数据结构·c++·面试
奇妙方程式1 天前
2026年第九届GXCPC广西大学生程序设计大赛(热身赛)题解
c++·编程比赛·编程竞赛·gxcpc