int maxSubArray(int* nums,int numsSize){
int ans = -1;
for(int i = 0; i < numsSize; i++){
for(int j = i; j < numsSize; j++){
int sum = 0;
for(int k = i; k <= j; k++){
sum += nums[k];
}
if (sum > ans){
ans = sum;
}
}
}
return ans;
}
优化枚举O(n²)
int maxSubArray(int* nums,int numsSize){
int ans = -1;
for(int i = 0; i < numsSize; i++){
int sum = 0;
for(int j = i; j < numsSize; j++){
sum += nums[j];
if (sum > ans){
ans = sum;
}
}
}
return ans;
}
贪心法O(n)
int maxSubArray(int* nums,int numsSize){
int ans = -1;
int sum = 0;
for(int i = 0; i < numsSize; i++){
sum += nums[i];
if (sum > ans){
ans = sum;
}
if (sum < 0){
sum = 0;
}
}
return ans;
}