您的位置:首页 > 其它

最大子序列和问题 算法

2008-05-25 04:32 330 查看
最大子序列和问题 算法

int max_sub(const int a[], int n)
{
int tmp_sum, sum, i;

tmp_sum = sum = 0;
for(i = 0; i < n; i++)
{
tmp_sum += a[i];
if(tmp_sum > sum)
sum = tmp_sum;
else if(tmp_sum < 0)
tmp_sum = 0;
}
return sum;
}

int main(void)
{
int a[] = {-2, 11, -4, 13, -5, 2, -5, -3, 12, -9};
int sum;

sum = max_sub(a, sizeof(a) / sizeof(int));
printf("max sum is %d/n", sum);

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: