max = a[0];
sum = 0;
for(i=0;i<n;i++)
{
sum = sum + a[i];
if(sum > max)max = sum;
if(sum < 0)sum = 0;
}
max 即是所求之数
博客给出了一段代码用于求解数组的最大子段和。通过遍历数组,不断累加元素更新总和,若总和大于当前最大值则更新最大值,若总和小于 0 则重置总和,最终得到最大子段和。
max = a[0];
sum = 0;
for(i=0;i<n;i++)
{
sum = sum + a[i];
if(sum > max)max = sum;
if(sum < 0)sum = 0;
}
max 即是所求之数
584

被折叠的 条评论
为什么被折叠?