update 53

This commit is contained in:
ShusenTang
2020-02-09 19:32:49 +08:00
parent 2a3d68bf65
commit 3a2f1de8eb
+6 -3
View File
@@ -1,8 +1,11 @@
# [53. Maximum Subarray](https://leetcode.com/problems/maximum-subarray/description/)
# 思路
从前往后遍历一遍,用currsum记录以当前位置为结尾的最大子序列和。可见currsum要么等于nums[i]本身,要么等于nums[i]加上上一个currsum,即更新准则为:
如果currsum大于0,那么currsum += nums[i]
否则currsum = nums[i]
就是一个简单的动态规划。从前往后遍历一遍,用currsum记录以当前位置为结尾的最大子序列和。可见currsum要么等于nums[i]本身,要么等于nums[i]加上上一个currsum,即更新准则为:
* 如果currsum大于0,那么`currsum += nums[i]`
* 否则,则`currsum = nums[i]`
时间复杂度O(n),空间复杂度O(1)
# C++
``` C++
class Solution {