• 记录连续子数组和;
  • 如果子数组和小于0,重新开始计数;
  • 数组长度为1,返回本身。
class Solution {
public:
    int FindGreatestSumOfSubArray(vector<int> array) {
        int count = 0;
        int result = INT_MIN;
        for (int i = 0; i < array.size(); i++) {
            count += array[i];
            if (result < count) result = count;
            if (count < 0) count = 0;
        }
        return result;
    
    }
};