最大子数组和【贪心算法】

  1. 最大子数组和
    给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。

子数组 是数组中的一个连续部分。

java 复制代码
class Solution {
    public int maxSubArray(int[] nums) {
        //记录最大结果,初始化为最小值
        int sum = Integer.MIN_VALUE;
        //记录连续和
        int count = 0;

        for (int i = 0; i < nums.length; i++) {
            count += nums[i];//累加
            if (count > sum) {//遇到最大值及时记录,只保留最大的
                sum = count;
            }
            if (count < 0) {//遇到连续和为负数,就舍弃前面的。令count=0,相当于把下一个当作起点。
                count = 0;
            }
        }
        return sum;
    }
}
相关推荐
伏小白白白25 分钟前
【论文精度-2】求解车辆路径问题的神经组合优化算法:综合展望(Yubin Xiao,2025)
人工智能·算法·机器学习
无敌最俊朗@1 小时前
数组-力扣hot56-合并区间
数据结构·算法·leetcode
囚生CY1 小时前
【速写】优化的深度与广度(Adam & Moun)
人工智能·python·算法
码农多耕地呗2 小时前
力扣94.二叉树的中序遍历(递归and迭代法)(java)
数据结构·算法·leetcode
懒羊羊不懒@2 小时前
Java基础语法—最小单位、及注释
java·c语言·开发语言·数据结构·学习·算法
白云千载尽3 小时前
leetcode 912.排序数组
算法·leetcode·职场和发展
哆啦刘小洋3 小时前
Tips:预封装约束的状态定义
算法
代码充电宝3 小时前
LeetCode 算法题【简单】290. 单词规律
java·算法·leetcode·职场和发展·哈希表
Juan_20124 小时前
P1040题解
c++·算法·动态规划·题解
Onesoft%J1ao4 小时前
C++竞赛递推算法-斐波那契数列常见题型与例题详解
c++·算法·动态规划·递推·信息学奥赛