LeetCode_Python3: 53. 最大子序和(簡單)
阿新 • • 發佈:2018-12-10
開始之前:從2018/8/27開始刷LeetCode,計劃每週刷五題,週末進行總結併發布在csdn上,計劃先刷150道題,從簡單開始。
week 3-3
要求:
CODE:
class Solution: def maxSubArray(self, nums): """ :type nums: List[int] :rtype: int 貪心演算法: 計算(當前拍)與(當前拍和上一拍之和)的大小 取大值放在當前拍數值位置 """ # 極端情況 if not nums: return 0 if len(nums) == 1: return nums[0] for i in range(1,len(nums)): sum_num = nums[i-1]+nums[i] # 記錄當前拍與上一拍之和 if sum_num >= nums[i]: nums[i] = sum_num # 當和>=當前拍時,該值替換當前拍值 return max(nums)
結果: