zoukankan      html  css  js  c++  java
  • 周练(8)53. 最大子序和

    • 贪心算法
    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
    
    
  • 相关阅读:
    命令[46]
    命令[53]
    命令[48]
    命令[43]
    命令[52]
    命令[55]
    命令[41]
    MYSQL[02]大小写问题
    hdu 1811
    hdu 1829
  • 原文地址:https://www.cnblogs.com/douzujun/p/13901129.html
Copyright © 2011-2022 走看看