连续子数组的最大和

累加的子数组和,如果大于零,那么我们继续累加就行;否则,则需要剔除原来的累加和重新开始.

class Solution {
public:
    int FindGreatestSumOfSubArray(vector<int> array) {
        if(!array.size())
            return 0;
        int max = array[0],cur = array[0];
        for(int i = 1;i<array.size();++i)
        {
            if(cur<=0)
                cur = array[i];
            else
                cur+=array[i];
            if(max<cur)
                max = cur;
        }
        return max;
    }
};
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容