当前位置: 首页 > news >正文

leetcode每日一练-第53题-最大子数组和

一、思路

动态规划

二、解题方法

使用了两个变量 maxSumcurrentSum 来分别记录全局的最大和和当前连续子数组的和。遍历数组时,我们不断更新 currentSum,并比较是否需要更新 maxSum。最后,maxSum 就是最大的连续子数组和。

三、code

class Solution {
public:int maxSubArray(vector<int>& nums) {int n=nums.size();if(n==0){return 0;}int maxSum=nums[0];// 初始化最大和为第一个元素int currSum=nums[0];// 当前连续子数组的和for(int i=1;i<n;++i){// 对于每个元素,判断是继续扩展当前子数组,还是从当前元素重新开始一个子数组currSum=std::max(nums[i],currSum+nums[i]);// 更新最大和maxSum=std::max(maxSum,currSum);}return maxSum;}
};

=========================================================================学到的知识:

1、currentSum = std::max(nums[i], currentSum + nums[i]);

这行代码的作用是计算当前连续子数组的和 currentSum,它有两个选择:

  1. 从当前元素 nums[i] 开始一个新的连续子数组,这是 nums[i] 的值。
  2. 将当前元素 nums[i] 添加到之前的连续子数组中,即 currentSum + nums[i]

这两个选择中,我们选择较大的那个作为当前连续子数组的和 currentSum。这是因为我们希望找到的是具有最大和的连续子数组,如果将当前元素加入之前的连续子数组后和更大,那么就继续扩展当前连续子数组;如果当前元素更大,说明开始一个新的子数组可能会更有利于获得更大的和。

总之,这行代码的作用是在每个位置 i 更新当前连续子数组的和,以便后续比较是否需要更新最大和 maxSum

 

相关文章:

leetcode每日一练-第53题-最大子数组和

一、思路 动态规划 二、解题方法 使用了两个变量 maxSum 和 currentSum 来分别记录全局的最大和和当前连续子数组的和。遍历数组时&#xff0c;我们不断更新 currentSum&#xff0c;并比较是否需要更新 maxSum。最后&#xff0c;maxSum 就是最大的连续子数组和。 三、code …...

京东云接入【风险识别】接口

京东云的接入文档写的真的跟逗你玩一样&#xff0c;就给提供了一个简单的实例&#xff0c;其他的全靠自己摸索。 这篇文章描述的是激动云【风险识别接口】接入&#xff0c;也会介绍如何接入其他的一些未在文章内描述到的接口。 这里使用的是python SDK&#xff0c;先安装 pip…...

在 linux 虚拟机上安装配置 hive

目录 一 下载hive 安装包 二 解压 hive 并配置环境变量 三 配置hive 的配置文件 四 更新 guava 五 hive初始化 六 开启远程连接 七 使用datagrip 连接 hive 一 下载hive 安装包 百度网盘资源如下&#xff1a; 链接: https://pan.baidu.com/s/18jF-Qri0hc52_rtL61O0YQ?…...

作品集(陆续上传中)

智能家居---不断完善中 家居-CSDN直播 家居 语音刷抖音 --- 基于串口和adb 基于守护进程的语音刷抖音-CSDN直播 基于守护进程的语音刷抖音 海天一色项目 --- 船舶靠港零碳排加热器 FTP云盘 --- 多进程和socket FTP云盘-CSDN直播 FTP云盘...

论文解读 | 三维点云深度学习的综述

原创 | 文 BFT机器人 KITTI 是作为基准测试是自动驾驶中最具影响力的数据集之一&#xff0c;在学术界和工业界都被广泛使用。现有的三维对象检测器存在着两个限制。第一是现有方法的远程检测能力相对较差。其次&#xff0c;如何充分利用图像中的纹理信息仍然是一个开放性的问题…...

基于costas环的载波同步系统matlab性能仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ............................................................................ I_Dataroun…...

解码自我注意的魔力:深入了解其直觉和机制

一、说明 自我注意机制是现代机器学习模型中的关键组成部分&#xff0c;尤其是在处理顺序数据时。这篇博文旨在提供这种机制的详细概述&#xff0c;解释它是如何工作的&#xff0c;它的优点&#xff0c;以及它背后的数学原理。我们还将讨论它在变压器模型中的实现和多头注意力的…...

mysql之存储引擎

目录 存储引擎概念 MyISAM MyISAM特点 MyISAM 表的存储格式 MyISAM适用的生产场景 InnoDB InnoDB特点 选择存储引擎依据 MyISAM 和 INNODB区别 命令 查看系统支持的存储引擎 查看表使用的存储引擎 修改存储引擎 存储引擎概念 MySQL中的数据用各种不同的技术存…...

服务器日志出现大量NTLM(NT LAN Manager)攻击

日志名称:Security 来源: Microsoft-Windows-Security-Auditing 日期: 2023/8/30 20:57:40 事件 ID:4625 任务类别:登录 级别: 信息 关键字: 审核失败 用户: 暂缺 计算机: WIN-QBJ3ORTR0CF 描述: 帐户登录失败。 主题: 安全 ID:NULL SID 帐户名:- 帐户域:- …...

Spring学习|Spring简介、IOC控制反转理解、IOC创建对象方式

Spring Spring:春天------>给软件行业带来了春天! 2002&#xff0c;首次推出了Spring框架的雏形: interface21框架! Spring框架即以interface21框架为基础,经过重新设计,并不断丰富其内涵,于2004年3月24日发布了1.0正式版。 RodJohnson&#xff0c;Spring Framework创始人&…...

DDR2 IP核调式记录2

本文相对简单&#xff0c;只供自己看看就行。从其它的博客找了个代码&#xff0c;然后记录下仿真波形。 1. 功能 直接使用quartus生成的DDR2 IP核&#xff0c;然后实现循环 -->写入burst长度的数据后读出。 代码数据的传输是32位&#xff0c;实际使用了两片IC。因此IP核也是…...

【ES6】js 中class的extends、super关键字用法和避坑点

在JavaScript中&#xff0c;使用class关键字可以实现面向对象编程。其中&#xff0c;extends和super是两个非常重要的关键字&#xff0c;它们分别用于实现类的继承和调用父类的方法。 一、extends关键字 extends关键字用于实现类的继承&#xff0c;它可以让一个子类继承父类的…...

mysql排名函数row_number()over(order by)和with * as 的用法

601. 体育馆的人流量(力扣mysql题,难度:困难) 表&#xff1a;Stadium ------------------------ | Column Name | Type | ------------------------ | id | int | | visit_date | date | | people | int | ------------------------vis…...

linux局域网IP地址冲突检测

使用keepalived设置vip的时候&#xff0c;发现vip无法连接&#xff0c;经查是出现了ip地址冲突&#xff0c;使用了一个在用的ip作为了vip&#xff0c;但是这个ip其实ping不通&#xff0c;因为目标机禁用了ping&#xff0c;也即是丢弃了ICMP包。 一、那么怎么检测IP地址是否已经…...

远距离WiFi模组方案,实现移动设备之间高效通信,无人机远程图传应用

随着科技的不断进步&#xff0c;无线通信技术也在日新月异地发展。其中&#xff0c;WiFi技术已经成为现代生活中不可或缺的一部分。 从室内到室外&#xff0c;WiFi的应用场景正在不断扩大&#xff0c;为我们的日常生活和工业生产带来了极大的便利。 WiFi技术&#xff0c;即无…...

Docker构建Springboot项目,并发布测试

把SpringBoot项目打包成Docker镜像有两种方案&#xff1a; 全自动化&#xff1a;先打好docker镜像仓库&#xff0c;然后在项目的maven配置中配置好仓库的地址&#xff0c;在项目里配置好Dockerfile文件&#xff0c;这样可以直接在idea中打包好后自动上传到镜像仓库&#xff0c…...

flutter架构全面解析

Flutter 是一个跨平台的 UI 工具集&#xff0c;它的设计初衷&#xff0c;就是允许在各种操作系统上复用同样的代码&#xff0c;例如 iOS 和 Android&#xff0c;同时让应用程序可以直接与底层平台服务进行交互。如此设计是为了让开发者能够在不同的平台上&#xff0c;都能交付拥…...

QHttpServer

QLineEdit-----输入提示 改动CmakeLists.txt 在帮助–索引查找QHttpServer 改动CmakeLists.txt&#xff0c;有三处改动 在谷歌浏览器测试&#xff0c;输入127.0.0.1/api/login 测试代码 #include<QCoreApplication> #include <QHttpServer> //http服务器 int m…...

21.3 CSS 背景属性

1. 背景颜色 background-color属性: 设置元素的背景颜色. 它可以接受各种颜色值, 包括命名颜色, 十六进制颜色码, RGB值, HSL值等.快捷键: bctab background-color:#fff;<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"…...

Ansible 常用命令50条

以下是 Ansible 常用的 50 条命令&#xff1a; ansible --version: 查看 Ansible 版本信息。ansible all -m ping: 检查所有主机的连通性。ansible-playbook playbook.yml: 运行指定的 Ansible Playbook 文件。ansible-doc module_name: 查看指定模块的帮助文档。ansible-conf…...

【免费下载】 PyTorch框架入门PPT下载

PyTorch框架入门PPT下载 【下载地址】PyTorch框架入门PPT下载 PyTorch框架入门PPT下载 项目地址: https://gitcode.com/open-source-toolkit/a64b8 资源介绍 本仓库提供了一个名为“PyTorch框架入门PPT”的资源文件下载。该PPT文件旨在帮助初学者快速入门PyTorch框架&a…...

轻松管理AD域:一款基于.NET的Web工具推荐

轻松管理AD域&#xff1a;一款基于.NET的Web工具推荐 【下载地址】AD域管理Web版工具 本资源提供了一个基于微软官方文档&#xff0c;使用.NET技术开发的Web AD域管理工具。该工具采用简单的HTML和一般处理程序&#xff08;Generic Handler&#xff09;来实现&#xff0c;旨在为…...

NotebookLM多源文档交叉去重实战:基于BERT-Embedding相似度阈值调优(附可复用Python脚本)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;NotebookLM多源文档交叉去重的核心挑战与价值定位 NotebookLM 作为 Google 推出的基于引用的 AI 笔记工具&#xff0c;其核心能力依赖于对用户上传文档的语义理解与跨文档关联。然而当用户导入多个来源…...

5分钟搞定Android Studio中文界面:免费汉化插件完整指南

5分钟搞定Android Studio中文界面&#xff1a;免费汉化插件完整指南 【免费下载链接】AndroidStudioChineseLanguagePack AndroidStudio中文插件(官方修改版本&#xff09; 项目地址: https://gitcode.com/gh_mirrors/an/AndroidStudioChineseLanguagePack 还在为Androi…...

RT-Thread Studio自定义工程路径踩坑记:解决‘Error retrieving output from the rttconfig server’报错

RT-Thread Studio自定义工程路径踩坑指南&#xff1a;从报错到原理的深度解析 第一次在RT-Thread Studio中尝试将项目放在D盘的自定义文件夹时&#xff0c;那个刺眼的红色报错框让我愣了几秒——"Error retrieving output from the rttconfig server"。控制台里密密麻…...

基于加速度计的体感音乐控制器:用MakeCode与Circuit Playground Express实现交互式乐器

1. 项目概述&#xff1a;当硬件编程遇见音乐创作 如果你对嵌入式开发、物理计算或者音乐技术感兴趣&#xff0c;但又觉得从零开始门槛太高&#xff0c;那么这个项目可能就是为你量身定做的。今天我们来聊聊如何用一块巴掌大的开发板——Adafruit的Circuit Playground Express&a…...

限时开放|Perplexity学术搜索私藏工作区(含18个学科定制模板+实时更新的期刊影响因子映射表)

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;Perplexity学术搜索的核心价值与适用场景 Perplexity.ai 并非传统搜索引擎&#xff0c;而是一个融合大语言模型推理能力与实时学术信息检索的智能研究协作者。其核心价值在于将“提问—验证—溯源”闭环内化为…...

全网最全短临降水预报方向科研辅导

...

IDE扩展管理套件:实现配置即代码与团队环境同步

1. 项目概述&#xff1a;一个为开发者定制的IDE扩展管理套件如果你和我一样&#xff0c;每天的工作都离不开各种集成开发环境&#xff08;IDE&#xff09;&#xff0c;比如 Visual Studio Code、IntelliJ IDEA 或者 PyCharm&#xff0c;那你一定对“扩展”或“插件”又爱又恨。…...

华为HCSP认证备考全攻略:5G网优方向

华为HCSP&#xff08;Huawei Certified Service Professional&#xff09;认证是5G网优行业的重要资质认证。本文从考试内容、备考策略、真题分析三个维度&#xff0c;帮你一次性通过考试。一、HCSP认证体系概览1.1 认证等级等级全称定位考试难度薪资加成HCIAHuawei Certified …...