【贪心算法】最大子序和

给你一个整数数组 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

提示:当前面序数和为负数时,直接舍去前面的序数

(INT32_MAX与INT32_MIN 是 C++ 的宏定义,代表了整型变量能够存储的最大正整数和最小负整数,分别为 2147483647 和 -2147483648,这两个宏在头文件 <limits.h> 中定义。)

cpp 复制代码
class Solution {
public:
    int maxSubArray(vector<int>& nums) {
        int result=INT32_MIN;
        int count=0;
        for(int i=0;i<nums.size();i++)
        {
            count+=nums[i];
            if(count>result)
            {
                result=count;
            }
            if(count<=0)
            {
                count=0;
            }
        }
        return result;

    }
};
相关推荐
wkd_0073 分钟前
【开源库 | xlsxio】C/C++读写.xlsx文件,xlsxio 在 Linux(Ubuntu18.04)的编译、交叉编译
c语言·c++·xlsxio·c语言读写xlsx·c++读写xlsx·xlsxio交叉编译
三万棵雪松17 分钟前
1.系统学习-线性回归
算法·机器学习·回归·线性回归·监督学习
m0_7482338818 分钟前
黑马程序员JavaWeb开发教程(前端部分) ---笔记分享
前端·笔记
m0_6938093829 分钟前
Python——day09
python·学习
Easy数模35 分钟前
基于LR/GNB/SVM/KNN/DT算法的鸢尾花分类和K-Means算法的聚类分析
算法·机器学习·支持向量机·分类·聚类
1101 110137 分钟前
STM32-笔记10-手写延时函数(SysTick)
笔记·stm32·单片机
LeonNo1142 分钟前
golangb并发,Sync包中Mutes,WaitGroup, NewCond的适应
学习
2401_858286111 小时前
117.【C语言】数据结构之排序(选择排序)
c语言·开发语言·数据结构·笔记·算法·排序算法
捕鲸叉1 小时前
C++软件设计模式之类型模式和对象型模式
开发语言·c++·设计模式
thesky1234561 小时前
活着就好20241226
学习·算法