您好,欢迎来到九壹网。
搜索
您的当前位置:首页最大子列和

最大子列和

来源:九壹网

最简单的方法:

         在线处理:每输入一个数据就进行即时处理,在任何一个地方中止输入,都能正确给出当前值。

int Sum(int A[],int N)
{
    int ThisSum,MaxSum;
    int i;
    ThisSum=MaxSum=0;
    for(i=0;i<N;i++)
    {
        ThisSum+=A[i];//向右累加
        if(ThisSum>MaxSum)
            MaxSum=ThisSum;//发现更大的和则更新当前结果
        else if(ThisSum<0)//如果当前子列和为负数,舍弃,∵不能是后面的和增大
            ThisSum=0;
    }
    return MaxSum;
}

复杂度:T(n)=O(n)。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务