开始之前:从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)
结果: