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

贪心 Leetcode 53 最大子数组和

最大子数组和

Leetcode 53

学习记录自代码随想录
给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
子数组 是数组中的一个连续部分。

示例 1:
输入:nums = [-2,1,-3,4,-1,2,1,-5,4]
输出:6
解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。

示例 2:
输入:nums = [1]
输出:1

示例 3:
输入:nums = [5,4,-1,7,8]
输出:23

提示:
1 <= nums.length <= 105
-104 <= nums[i] <= 104

要点:1.贪心策略;遇到负值因为其一定会让总和减少,所以舍弃负的值,重置为0,同时用result记录最大值保证不错过最大值;

class Solution{
public:int maxSubArray(vector<int>& nums){int result = -pow(10, 5);int count = 0;// 贪心策略;遇到负值因为其一定会让总和减少,所以舍弃负的值,重置为0,同时用result记录最大值保证不错过最大值for(int i = 0; i < nums.size(); i++){count += nums[i];if(count > result){result = count;}if(count < 0) count = 0;}return result;}
};

相关文章:

  • Pycharm的下载安装与汉化
  • 【Mybatis】多表映射 第二期
  • 德人合科技 | 天锐绿盾终端安全管理系统
  • GO数组切片
  • 排序算法--堆排序
  • Leetcode210. 课程表 II
  • 大语言模型LLM推理加速:LangChain与ChatGLM3-6B的推理加速技术(LLM系列11)
  • 【Redis】高级特性 - 有序集合
  • 【mysql 数据库事务】开启事务操作数据库,写入失败后,不回滚,会有问题么? 这里隐藏着大坑,复试,面试时可以镇住面试老师!!!!
  • 【pytorch】函数记录
  • 【MySQL】学习多表查询和笛卡尔积 - 副本
  • PureFlash v1.9.1特性介绍
  • 【Android 从入门到出门】第二章:使用声明式UI创建屏幕并探索组合原则
  • 【QT+QGIS跨平台编译】之六十三:【QGIS_CORE跨平台编译】—【错误处理:未定义的类QgsMapLayer - QgsMapLayerModel】
  • 《Vite 基础知识》关于 .mjs .cjs 文件引出 NodeJS 对JS模块加载的思考(CommonJS 和 ESM)
  • 78. Subsets
  • CSS居中完全指南——构建CSS居中决策树
  • golang 发送GET和POST示例
  • input实现文字超出省略号功能
  • linux学习笔记
  • React Native移动开发实战-3-实现页面间的数据传递
  • VirtualBox 安装过程中出现 Running VMs found 错误的解决过程
  • 用Visual Studio开发以太坊智能合约
  • 关于Kubernetes Dashboard漏洞CVE-2018-18264的修复公告
  • 完善智慧办公建设,小熊U租获京东数千万元A+轮融资 ...
  • ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • ​ubuntu下安装kvm虚拟机
  • #define与typedef区别
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • $NOIp2018$劝退记
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (ZT) 理解系统底层的概念是多么重要(by趋势科技邹飞)
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (附源码)springboot工单管理系统 毕业设计 964158
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • (亲测有效)解决windows11无法使用1500000波特率的问题
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • (译)计算距离、方位和更多经纬度之间的点
  • (原)Matlab的svmtrain和svmclassify
  • (转)程序员疫苗:代码注入
  • .libPaths()设置包加载目录
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .Net Core和.Net Standard直观理解
  • .NET 将多个程序集合并成单一程序集的 4+3 种方法
  • .NET 中小心嵌套等待的 Task,它可能会耗尽你线程池的现有资源,出现类似死锁的情况
  • .NET/C# 在 64 位进程中读取 32 位进程重定向后的注册表
  • .NET:自动将请求参数绑定到ASPX、ASHX和MVC(菜鸟必看)
  • .NET关于 跳过SSL中遇到的问题
  • .Net语言中的StringBuilder:入门到精通
  • @SuppressWarnings注解
  • [ 代码审计篇 ] 代码审计案例详解(一) SQL注入代码审计案例
  • [ 环境搭建篇 ] 安装 java 环境并配置环境变量(附 JDK1.8 安装包)
  • [ 渗透测试面试篇 ] 渗透测试面试题大集合(详解)(十)RCE (远程代码/命令执行漏洞)相关面试题