这个题重在思想,从头到尾遍历,如果前面一个数大于0,就将前一个数加到后一个数中
这样生成的新的数组里面就有最大数组和
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int res = nums[0];
for (int i=1;i<nums.size();i++) {
if(nums[i-1]>0){
nums[i]=nums[i]+nums[i-1];
}
}
for(int i=0;i<nums.size();i++){
res=max(nums[i],res);
}
return res;
}
};