53. Maximum Subarray
problem description
Given an integer array nums
, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.
Example:
Follow up:
If you have figured out the O(n) solution, try coding another solution using the divide and conquer approach, which is more subtle
algorithm analysis
最大连续子数组和,典型的动态规划问题。如果现在给出大小为3的数字,分别为1,2,3。他们的结果是6这时候,如果数组最后加入一个数字4,结果会变为10。这个例子说明,可以用之前的结果来简化求解现在结果的过程。这也是动态规划的思想。这里还有一种情况,就是如果当前和为负值的情况,这时候不能用前面的负值,应该使用当前值直接表示。
code
algorithm anlysis
一次循环使用以为数组保存最后结果,复杂度时间O(n)
Last updated