题目描述:

给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。

递推式:dp[i]=max(dp[i-1]+nums[i],nums[i]),result=max(result,dp[i])

class Solution {
public:
    int maxSubArray(vector<int>& nums) {
        int len=nums.size();
        int dp[len],result=nums[0];
        dp[0]=nums[0];
        for(int i=1;i<len;i++)
        {            
            dp[i]=max(dp[i-1]+nums[i],nums[i]);//注意这里是和nums[i]进行比较
            result=max(result,dp[i]);
        }
        return result;
    }
};