2023.8.25
文章来源:https://www.toymoban.com/news/detail-672098.html
本题可以转化为:求两数组的最长公共子序列。 进而可以用dp算法解决。 方法类似于这题最长公共子序列 。 代码如下:文章来源地址https://www.toymoban.com/news/detail-672098.html
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()];
}
};
到了这里,关于leetcode 1035. 不相交的线的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!