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

LeetCode:53. 最大子序和

跟着carl学算法,本系列博客仅做个人记录,建议大家都去看carl本人的博客,写的真的很好的!
代码随想录

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

  • 如果count + num[i] < 0 则重置count =num[i],因为和如果为负数,则一定是会拖累后面的num[i]
  • 这里的重点并不是num[i]的正负,而是count + num[i]的正负
	public int maxSubArray(int[] nums) {
        int result = Integer.MIN_VALUE;
        int count = 0;
        for (int i = 0; i < nums.length; i++) {
            count += nums[i];
            if (count > result)
                result = count;
            if (count < 0)
                count = 0;
        }
        return result;
    }

http://www.kler.cn/a/515077.html

相关文章:

  • 小型分布式发电项目优化设计方案
  • 论文笔记(六十二)Diffusion Reward Learning Rewards via Conditional Video Diffusion
  • 高并发压力测试
  • 【深度学习】嘿马深度学习笔记第11篇:卷积神经网络,学习目标【附代码文档】
  • 【面试】Java 记录一次面试过程 三年工作经验
  • SpringCloud微服务Gateway网关简单集成Sentinel
  • 初始Transformer
  • C++ STL(8)map
  • 正则表达式的艺术:轻松驾驭 Python 的 re 库
  • 智能鞋利用机器学习和深度学习技术进行患者监测和步态分析的演变与挑战
  • Roland 键盘合成器接声卡(福克斯特/雅马哈)声音小/音质异常的问题
  • insight在线需求分析系统概要介绍
  • redis离线安装部署详解(包括一键启动)
  • 为什么要申请专利
  • LiveBench:AI 模型基准测试与评估工具解析与实战指南
  • 复位信号的同步与释放(同步复位、异步复位、异步复位同步释放)
  • 【网络协议】【http】【https】TLS解决了HTTP存在的问题-加密通信+摘要,数字签名+CA证书
  • HTTP post请求工具类
  • 博客之星2024年度总评选——我的年度创作回顾与总结
  • Django项目的创建及运行——Django学习日志(一)
  • Ubuntu环境 nginx 源码 编译安装
  • 吴恩达深度学习——神经网络介绍
  • 最新版pycharm如何配置conda环境
  • 考研408笔记之数据结构(七)——排序
  • 使用easyimages部署个人图床服务
  • 求字符串中所有整数的最小和