用动态法求最大子段和.cpp
来自「算法设计与分析的经典程序」· C++ 代码 · 共 17 行
CPP
17 行
#include <stdio.h>
int MaxSum(int n,int *a)
{int i,b=0,sum=0;
for (i=0;i<n;i++){
if (b>0) {b += a[i];
printf("\nb=%5d\n",b);}
else b = a[i];
if (b>sum) {sum = b;
printf("\nsum=%5d\n",b);}
}
return sum;
}
void main()
{int a[6]={-2,11,-4,13,-5,-2},n;
n=6;
printf("\n%10d\n",MaxSum( n,a));
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?