53. Maximum Subarray
solution
class Solution:
def maxSubArray(self, nums: List[int]) -> int:
res = -float('inf')
prefix_sum = 0
for num in nums:
prefix_sum = max(prefix_sum + num, num) # 要么选这个数,要么不选
res = max(res, prefix_sum)
return resclass Solution:
def maxSubArray(self, nums: List[int]) -> int:
maxSum = float('-inf')
currentSum = 0
for num in nums:
currentSum += num
if currentSum > maxSum:
maxSum = currentSum
if currentSum < 0:
currentSum = 0
return maxSumfollow up
Last updated