class Solution {
public:
int maxSubArray(int A[], int n) {
int thisSum = 0;
int maxSum = INT_MIN;
for(int i = 0; i < n; i++)
{
if(thisSum < 0)
thisSum = 0;
thisSum += A[i];
maxSum = max(thisSum, maxSum);
}
return maxSum;
}
};
需要注意的是maxSum的初始值应为一个极小数,
防止数列中全为负值的情况