求一个整数数组的连续子序列,要求该子序列的整数之和为该整数数组子序列元素和的最大值。
代码如下:
-
#include <stdio.h>
-
-
int GetMaxSub(int a[],int n)
-
{
-
int i;
-
int max=0,thissum=0;
-
for(i=0;i<n;i++)
-
{
-
thissum+=a[i];
-
if(thissum>max)
-
{
-
max=thissum;
-
}
-
else if(thissum<0)
-
{
-
thissum=0;
-
}
-
}
-
return max;
-
}
-
-
int main()
-
{
-
int a[]={-2,11,-4,13,-5,-2};
-
int sum=GetMaxSub(a,6);
-
printf("最大子串和为:%d\n",sum);
-
}
阅读(1988) | 评论(0) | 转发(0) |