int maxSubArray(int* nums, int numsSize)
{
int maxsum;
int sum,i;
sum=0;
maxsum=0;
int condition=0;
int minus=nums[0];
for(i=0;i<numsSize;i++)//处理全是负数的可能情况。
{
if(nums[i]>0)
{
condition=1;
break;
}
else if(nums[i]>=minus)
minus=nums[i];
}
for(i=0;i<numsSize;i++)
{
sum+=nums[i];
if(sum>maxsum)
maxsum=sum;
else if(sum<0)
sum=0;
}
if(condition==1)
return maxsum;
else
return minus;
}