题目链接:https://leetcode.cn/problems/maximum-subarray/
难度:简单

描述:
给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
子数组 是数组中的一个连续部分。

提示:
nums.length[1, 100000]

题解

  1. class Solution:
  2. def maxSubArray(self, nums: List[int]) -> int:
  3. ret = nums[0]
  4. sub_max = nums[0] # sub_max记录以i结尾的子数组的最大和
  5. for i in nums[1:]:
  6. sub_max = max(i, sub_max+i)
  7. ret = max(ret, sub_max)
  8. return ret