題目來源:https://leetcode-cn.com/problems/maximum-subarraypython
給定一個整數數組 nums ,找到一個具備最大和的連續子數組(子數組最少包含一個元素),返回其最大和。segmentfault
示例:數組
輸入: [-2,1,-3,4,-1,2,1,-5,4], 輸出: 6 解釋: 連續子數組 [4,-1,2,1] 的和最大,爲 6。
cur_sum
;max_sum
;max_sum
。class Solution: def maxSubArray(self, nums: List[int]) -> int: '''查找連續子數組的最大和 Args: nums: 整數數組 Returns: 返回整數數組的最大子序和 ''' # 比較當前子序和,最大子序和,返回最大值 # 定義當前子序和以及最大子序和爲第一個元素 cur_sum = max_sum = nums[0] # 遍歷整數數組 for x in range(1, len(nums)): # 比較當前值和當前子序和的值,取較大值 cur_sum = max(nums[x], cur_sum + nums[x]) # 比較當前值和定義的最大子序和值,將最大值重置賦值給 max_sum max_sum = max(cur_sum, max_sum) return max_sum
以上是本篇的主要內容
歡迎關注微信公衆號《書所集錄》