您的位置:首页 > 其它

Leetcode 53. Maximum Subarray

2017-12-29 16:39 363 查看
题目的意思是找出连续子序列的最大和。

 

思路:典型的动态规划问题,以第i个数为结尾的连续子序列最大和sum[i]是 (sum[i-1]+nums[i],nums[i])中较大的数。不断更新re用来存前i个数连续子序列的最大和,时间复杂度O(n).

class Solution {
public:
int maxSubArray(vector<int>& nums) {
int sum=0, re=INT_MIN;
for(int x:nums)
{
sum=max(sum+x,x);
re=max(sum,re);
}
return re;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  leetcode