代码随想录算法训练营day53||1035.不相交的线||53. 最大子序和
admin
2024-01-20 20:13:41
0

1035.不相交的线

思路:

直线不能相交,就说明在字符串A中找到一个与字符串B相同的子序列,而且这个子序列不能改变相对顺序,只要相对顺序不改变,链接相同数字的直线就不会相交。

class Solution {
public:int maxUncrossedLines(vector& A, vector& B) {vector> dp(A.size() + 1, vector(B.size() + 1, 0));for (int i = 1; i <= A.size(); i++) {for (int j = 1; j <= B.size(); j++) {if (A[i - 1] == B[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[A.size()][B.size()];}
};

53. 最大子序和

思路:

动规五部曲如下:

  1. 确定dp数组(dp table)以及下标的含义

dp[i]:包括下标i之前的最大连续子序列和为dp[i]

  1. 确定递推公式

dp[i]只有两个方向可以推出来:

  • dp[i - 1] + nums[i],即:nums[i]加入当前连续子序列和
  • nums[i],即:从头开始计算当前连续子序列和

一定是取最大的,所以dp[i] = max(dp[i - 1] + nums[i], nums[i]);

  1. dp数组如何初始化

从递推公式可以看出来dp[i]是依赖于dp[i - 1]的状态,dp[0]就是递推公式的基础。

dp[0]应该是多少呢?

根据dp[i]的定义,很明显dp[0]应为nums[0]即dp[0] = nums[0]。

  1. 确定遍历顺序

递推公式中dp[i]依赖于dp[i - 1]的状态,需要从前向后遍历。

class Solution {
public:int maxSubArray(vector& nums) {if (nums.size() == 0) return 0;vector dp(nums.size());dp[0] = nums[0];int result = dp[0];for (int i = 1; i < nums.size(); i++) {dp[i] = max(dp[i - 1] + nums[i], nums[i]); // 状态转移公式if (dp[i] > result) result = dp[i]; // result 保存dp[i]的最大值}return result;}
};

相关内容

热门资讯

手机安卓系统打不开了,故障排查... 手机安卓系统打不开了?别急,我来帮你分析一下可能的原因,并提供一些解决方法。相信我,只要按照步骤来,...
安卓系统抖音不能全屏,安卓抖音... 你是不是也遇到了这个问题?安卓手机上的抖音怎么就不能全屏播放视频了呢?别急,让我来给你详细解析一下这...
爱酷怎么用回安卓系统,轻松转换... 你是不是也和我一样,对爱酷手机上的安卓系统爱不释手呢?但是,有时候因为某些原因,我们可能需要将爱酷手...
怎么查看安卓系统包名,如何查看... 你是不是也好奇过,为什么有些应用的名字听起来那么普通,但打开一看,竟然隐藏着这么多的秘密?没错,我要...
安卓系统rom适配教程,轻松掌... 你有没有想过,你的安卓手机为什么有时候会卡得像蜗牛一样?别急,别急,今天就来给你揭秘一个神奇的技能—...
假苹果是安卓系统吗,安卓系统下... 你有没有听说过最近市面上出现了一种叫做“假苹果”的手机?没错,就是那种长得跟苹果手机一模一样,但价格...
安卓系统防止软件自启动,有效防... 你有没有发现,手机里的安卓系统有时候就像一个调皮的小家伙,总是偷偷摸摸地自启动各种软件,让人防不胜防...
安卓12系统要更新吗,安卓12... 你有没有注意到,最近安卓系统的更新消息又刷屏了?没错,就是那个我们每天离不开的安卓12系统。那么,安...
8848安卓系统安全吗,深度解... 你有没有听说最近那个8848安卓系统?是不是也在想,这系统靠谱吗?安全不安全?别急,今天就来给你好好...
安卓系统大股东,大股东引领下的... 你知道吗?在智能手机的世界里,有一个系统可是当之无愧的大佬,它就是安卓系统。今天,就让我带你一起揭开...
安卓11系统通知气泡,智能便捷... 你知道吗?最近安卓系统又更新啦!这次可是升级到了安卓11系统,听说通知气泡功能变得超级酷炫。你是不是...
安卓系统到底该不该升级,是追求... 你有没有想过,你的安卓手机是不是该升级了呢?这个问题,就像是在问你是不是该换新衣服一样,每个人都有自...
安卓系统彩信怎么发照片,安卓系... 你有没有想过,用安卓手机发送彩信照片竟然也能这么简单?没错,就是那种彩色的、带图标的短信,以前总觉得...
安卓系统下铃声下载,个性化定制... 手机里的铃声是不是已经让你听腻了?想要给手机换换口味,但又不知道从哪里下载新的铃声?别急,今天就来给...
小米4怎么更换安卓系统,解锁更... 你有没有发现,小米4这款手机虽然已经上市好几年了,但它的魅力依然不减呢!不过,时间久了,系统难免会出...
电脑安卓系统有呢些,功能丰富的... 你有没有发现,现在电脑上也能用安卓系统啦?这可不是什么小道消息,而是实实在在的技术革新。今天,就让我...
安卓系统怎么查找id,安卓系统... 你是不是也和我一样,手机里装了各种各样的安卓应用,有时候突然需要用到某个应用的ID,却怎么也找不到呢...
安卓系统6.0到那下载,下载与... 你有没有发现,手机系统更新换代的速度简直就像小孩子的成长一样快?这不,安卓系统从6.0版本开始,就给...
cns移动投稿系统安卓,助力学... 你有没有听说最近CNS移动投稿系统安卓版上线了?这可是学术界的一大福音啊!想象你躺在沙发上,轻松一点...
安卓系统照片自动下载,轻松管理... 你有没有发现,手机里的照片越来越多,有时候翻找起来就像大海捞针一样?别急,今天就来给你揭秘一个超级实...