首页 > 其他 > 详细

周练(8)53. 最大子序和

时间:2020-10-30 15:02:29      阅读:27      评论:0      收藏:0      [点我收藏+]

技术分享图片

  • 贪心算法
class Solution:
    def maxSubArray(self, nums: List[int]) -> int:
        # 贪心算法
        nlen = len(nums)
        if not nums:
            return float("-inf")

        cur_sum = max_sum = nums[0]
        for i in range(1, nlen):
            cur_sum = max(nums[i], cur_sum + nums[i])
            max_sum = max(cur_sum, max_sum)

        return max_sum
  • 动态规划

技术分享图片

#
# @lc app=leetcode.cn id=53 lang=python3
#
# [53] 最大子序和
#

# @lc code=start
class Solution:
    def maxSubArray(self, nums: List[int]) -> int:
        nlen = len(nums)

        # 动态规划
        for i in range(1, nlen):
            if nums[i - 1] > 0:
                nums[i] += nums[i - 1]
        
        return max(nums)

# @lc code=end

周练(8)53. 最大子序和

原文:https://www.cnblogs.com/douzujun/p/13901129.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!