题解 | #连续子数组的最大和#

连续子数组的最大和

https://www.nowcoder.com/practice/459bd355da1549fa8a49e350bf3df484

#include <iostream>
#include <algorithm>
using namespace std;

class Solution{
public:
    int FindGreatestSumOfSubArray(vector<int> array){
        vector<int> vec(array.size(),0);
        int maxnumber = array[0];
        vec[0] = array[0];
        if(array.size() == 1) return array[0];
        for(int i = 1;i < array.size();i ++){
            vec[i] = max(vec[i - 1] + array[i],array[i]);
            if(vec[i] > maxnumber) maxnumber = vec[i];
        }
        return maxnumber;
    }
};

开始练习动态规划了。犯了两个小错误,一是vector没有初始化就直接使用vec[i]导致越界,二就是定义了一个max整数与max方法重名了。

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务