leetcode 53. 最大子序和

题解

简单的动态规划吧算是
还是比较简单的题目
首先计算sum的值,如果和的值大于0那么这一段的和就对后面那个数有用,否则,就重新从下一个数开始,然后取最大值。

代码

class Solution {
public:
    int maxSubArray(vector<int>& nums) {
        int n = nums.size();
        int ans = nums[0],sum = 0;
        for(int i = 0; i < n; i++){
            if(sum > 0){
                sum = sum + nums[i];
            }else{
                sum = nums[i];
            }
            ans = max(ans , sum);
        }
        return ans;
    }
};
上一篇:剑指 Offer 53 - II. 0~n-1中缺失的数字


下一篇:【手打】coredns单台使用