zoukankan      html  css  js  c++  java
  • 最大子序列和问题的解

    最大的子序列和的问题:

          给定整数A1,A2,...,An(可能有负数),求Σjk=i   Ak 的最大值(为方便起见,如果所有整数均为负数,则最大子序列的和为0)。

          

          这道题应该是比较基础的题目,有多种解法,时间复杂度也不尽相同,在这里就给大家介绍一种最有效的算法,其时间复杂度为O(n).

       代码如下:

       应该是比较好理解的。。。。注意题目要求所有整数均为负数时输出0.

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

        

  • 相关阅读:
    大数据
    优化
    gnu
    sed
    hadoop部署
    安装 zookeeper
    ansible
    ssh 配置无密码登录
    未完待续
    解正向代理、反向代理、透明代理
  • 原文地址:https://www.cnblogs.com/yaoyueduzhen/p/4384412.html
Copyright © 2011-2022 走看看