刚开始使用二层循环最后发现超时,于是看了看评论,用的动态规划思想。此外还有一种分治方法参考这个博客
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int sum = 0;
int max=nums[0];
for(int i=0;i<nums.size();i++){
if(sum>0){
sum+=nums[i];
}else{
sum=nums[i];
}
if(sum>max){
max=sum;
}
}
return max;
}
};