Maximum Subarray

问题:最大连续子窜和是多少
分析:动态规划,定义max记录最大值,sum记录以i结束的连续子窜的最大值

class Solution {

public:

    int maxSubArray(int A[], int n) {

        int sum;

        int MAX=A[0];

        sum=A[0];

        for(int i=1;i<n;i++)

        {

            if(sum+A[i]<A[i]) sum=A[i];

            else sum+=A[i];

            if(MAX<sum) MAX=sum;

        }

        return MAX;

    }

};

  

你可能感兴趣的:(array)