连续子数组的最大和

来源:互联网 发布:淘宝店铺双十一宣传语 编辑:程序博客网 时间:2024/05/20 05:30
class Solution {
public:
    int FindGreatestSumOfSubArray(vector<int> array) {


        if(array.empty()) return 0;
        int sum = array[0], tempsum = array[0]; //注意初始值 不能设为0 防止只有负数
        for(int i = 1; i < array.size(); i++) //从1开始 因为0的情况在初始化时完成了
        {
            tempsum = (tempsum < 0) ? array[i] : tempsum + array[i];
            sum = (tempsum > sum) ? tempsum : sum;
        }
        return sum;
        
    }
};