二次for循环:
int Maxsum1(int A[],int N){
int i,j,thissum,maxsum=0;
for(i=0;i<N;i++){
thissum=0;
for(j=i;j<N;j++){
thissum+=A[j];
if(thissum>maxsum) maxsum=thissum;
}
}
return maxsum;
}
实时计算:
int Maxsum2(int A[],int N){
int i,thissum=0,maxsum=0;
for(i=0;i<N;i++){
thissum+=A[i];
if(thissum>maxsum)
maxsum=thissum;
else if(thissum<0) //当thissum<0;对整体就没有了贡献,就把他归零舍弃
thissum=0;
}
return maxsum;
}