刷代码随想录有感(83):贪心算法——最大子数组和

题干:

代码:

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

局部最优:只要连续和大于0就一直遍历加下去,直到为0或小于0时再以下一个数为起点往下加。而令count=0实现了这一要求。

最大子序列可以包含负数,只要连续和是正数就行了。

相关推荐
凯瑟琳.奥古斯特15 分钟前
二分查找解力扣1011最优运载能力
开发语言·c++·算法·leetcode·职场和发展
学计算机的计算基24 分钟前
二叉树算法下篇:递归核心技巧与高频面试题详解
java·笔记·算法
水龙吟啸36 分钟前
华为2026.6.24机考选择题+编程题【速刷敲黑板】
人工智能·深度学习·算法·机器学习·华为
Eloudy1 小时前
全文 - Evolution Strategies as a Scalable Alternative to Reinforcement Learning
人工智能·算法
net3m331 小时前
可以加大adc滑动滤波的间隔时间,比如定时每20ms采集一次滤波输入,且用滑动窗口均值滤波
算法
卷福同学7 小时前
不用服务器,不用配环境,我10分钟上线了一个AI Agent
人工智能·后端·算法
至乐活着10 小时前
深入解析跳表SkipList:原理、实现与性能优化实战
数据结构·算法·跳表·skiplist·java实现
Jerry11 小时前
LeetCode 383. 赎金信
算法
ai产品老杨11 小时前
H264 H265视频分析常见问题和排查清单
人工智能·算法·音视频
Jerry11 小时前
LeetCode 454. 四数相加 II
算法