数组最大子序列的和

来源:互联网 发布:阳光一百置业 知乎 编辑:程序博客网 时间:2024/05/20 08:23
/************************************************************************//* 求最大子序列的和,时间复杂度Q(N)                                      *//************************************************************************/    bool g_bInputIsInvalid=false;//判断输入是否合法    int FindGreatestSumOfSubArray(vector<int> array) {        if(array.size()==0){            g_bInputIsInvalid=true;            return 0;        }            vector<int>::const_iterator iter=array.begin();     int nMaxSum=array[0];//这里很关键     int nCurrentSum=0;        for(;iter!=array.end();++iter){            nCurrentSum+=*iter;            if(nCurrentSum>nMaxSum){                nMaxSum=nCurrentSum;            }                         else if(nCurrentSum<0){                 nCurrentSum=0;            }                       }        return nMaxSum;    }

0 0