最大子序列和

来源:互联网 发布:python实现svm多分类 编辑:程序博客网 时间:2024/06/06 20:28

最大子序列和 经常会和最长递增子序列搞混。。。然而最近看了下最大子序列和,其实没有想象中那么难。。。

最大子序列和 是求连续子序列里面和最大的那个子序列的和。如果还想求出子序列的位置,可以增加两个用来记录子序列起始位置的变量,在两个if语句里面添加变量更新语句。

int MaxSubsequenceSum(const int A[], int N){    int flag,MaxSum,i;    flag = 0, MaxSum = 0;    for(i = 0; i < N; i++)    {        flag += A[i];        if(flag > MaxSum)            MaxSum = flag;        else if(flag <0)            flag = 0;    }    return MaxSum;}