解题思路
这题很简单,创建一个变量sum
用于表示增益, 创建变量res
记作最终答案
- 如果
sum
大于0则表示遇到了增数, - 如果
sum
小于等于0,则继续往后推,sum
更新为当前值 - 在每次遍历的时候都需要比较
res
与sum
中的最大值,最后遍历结束时返回res
class Solution:
def maxSubArray(self, nums: List[int]) -> int:
sums = 0
res = nums[0]
for n in nums:
if sums > 0: sums += n
else: sums = n
res = max(sums, res)
return res