Leetcode 53:最大子序和

例如:输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为6。

 

解法暴力求解,直接用循环控制哪个区间的和最大,对于每一个i,遍历第 i+1 ~ 第n-1个元素之间任意子区间的最大和。得到 res 的是以第 i 个元素为起点的子区间最大和。再移动i,寻找以第 i+1 个元素为起点的最大子区间的和。一直让 i 走到 第 n-1 个元素。双重循环结束。

 1 class Solution:
 2     def maxSubArray(self, nums):
 3         """
 4         :type nums: List[int]
 5         :rtype: int
 6         """
 7         res = 0
 8         for i in range(len(nums)):
 9             for j in range(i + 1, len(nums)):
10                 res = max(res, sum(nums[i:j]))
11                 
12         return res

 

posted @ 2020-06-03 10:00  Robin-Sun  阅读(152)  评论(0)    收藏  举报