最大连续子序列的和

来源:互联网 发布:壁虎java基础视频下载 编辑:程序博客网 时间:2024/06/07 03:31
追大连续子序列,第一个数肯定为正数,需要考虑的是:数组内全是负数,这时最大子序列的和就是求负数的最大值
例如{-1,-2.-3,-4},最大连续子序列之和为-1.
下面是代码<pre name="code" class="cpp">class Solution {public:    int maxSubArray(int A[], int n) {        int sum=0;        int max=0;        int start,end;        for(int i=0;i<n;i++){            if(sum<=0){                sum=A[i];                start=i;end=i;            }            else {                sum+=A[i];                end=i;            }            if(sum>max){                max=sum;            }        }        if(max==0){            int count=A[0];            for(int i=1;i<n;i++){                if(count<A[i])                count=A[i];            }            return count;        }        return max;    }};

                                             
0 0
原创粉丝点击