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()];
    }
};
相关推荐
郝学胜-神的一滴几秒前
Linux 多线程编程:深入理解 `pthread_join` 函数
linux·开发语言·jvm·数据结构·c++·程序人生·算法
客梦1 分钟前
数据结构--排序
数据结构·笔记
罗湖老棍子2 分钟前
瑞瑞的木板(洛谷P1334 )
c++·算法·优先队列·贪心·哈夫曼树
embrace9918 分钟前
【数据结构学习】数据结构和算法
c语言·数据结构·c++·学习·算法·链表·哈希算法
杨恒9823 分钟前
GESPC++三级编程题 知识点
数据结构·c++·算法
koping_wu29 分钟前
【leetcode】排序数组:快速排序、堆排序、归并排序
java·算法·leetcode
小O的算法实验室32 分钟前
2025年AEI SCI1区TOP,基于自适应进化算法的城市空中交通多目标枢纽选址,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
历程里程碑33 分钟前
LeetCode 283:原地移动零的优雅解法
java·c语言·开发语言·数据结构·c++·算法·leetcode
星火飞码iFlyCode37 分钟前
iFlyCode实践规范驱动开发(SDD):招考平台报名相片质量抽检功能开发实战
java·前端·python·算法·ai编程·科大讯飞
leaves falling39 分钟前
c语言-根据输入的年份和月份,计算并输出该月份的天数
c语言·开发语言·算法