题目描述:

leetcood学习笔记-53*-最大子列和

 

方法一:O(N)

class Solution(object):
    def maxSubArray(self, nums):
        sum = 0
        max_sub_sum = nums[0]
        for num in nums:
            sum += num
            if sum > max_sub_sum:
                max_sub_sum = sum
            if sum < 0:
                sum = 0
        return max_sub_sum

二:O(N)/O(1)

class Solution(object):
    def maxSubArray(self, nums):
        """
        :type nums: List[int]
        :rtype: int
         """
        for i in range(1, len(nums)):
            nums[i]= nums[i] + max(nums[i-1], 0)
        return max(nums)

三:分治法

相关文章:

  • 2021-06-10
  • 2021-12-20
  • 2021-04-14
  • 2021-11-16
  • 2021-10-18
  • 2021-06-19
猜你喜欢
  • 2022-01-06
  • 2021-07-15
  • 2021-08-07
  • 2021-11-08
相关资源
相似解决方案