動態規劃 leetcode 53

2021-10-22 03:32:46 字數 753 閱讀 8747

0️⃣python資料結構與演算法學習路線

學習內容:

給定乙個整數陣列 nums ,找到乙個具有最大和的連續子陣列(子陣列最少包含乙個元素),返回其最大和。

輸入:nums = [-2,1,-3,4,-1,2,1,-5,4]

輸出:6

解釋:連續子陣列 [4,-1,2,1] 的和最大,為 6 。

1 不可避免的是要遍歷陣列,所以先寫好for迴圈

遍歷時記錄:1. 子集和maxsum;2. 在變化過程中產生的最大maxsum,記為end

2 為什麼是tmpsum + num 和 num 之間取最大值呢?

class

solution

:def

maxsubarray

(self, nums: list[

int])-

>

int:

maxsum =

0 end = nums[0]

for num in nums:

maxsum =

max(maxsum +num,num)

end =

max(end,maxsum )

return end

不用寫 if l == 1: return nums

可以直接寫numadd = nums[0] ,迴圈的時候寫range(1,l)

leetcode53 簡單動態規劃

給定乙個整數陣列 nums 找到乙個具有最大和的連續子陣列 子陣列最少包含乙個元素 返回其最大和。示例 輸入 2,1,3,4,1,2,1,5,4 輸出 6 解釋 連續子陣列 4,1,2,1 的和最大,為 6。class solution else ans math.max ans,sum retur...

leetcode 53 最大子段和 動態規劃

給定乙個整數陣列 nums 找到乙個具有最大和的連續子陣列 子陣列最少包含乙個元素 返回其最大和。示例 輸入 2,1,3,4,1,2,1,5,4 輸出 6 解釋 連續子陣列 4,1,2,1 的和最大,為 6。高階 如果你已經實現複雜度為 o n 的解法,嘗試使用更為精妙的分治法求解。若採用暴力列舉所...

leetcode 53 最大子序和 (動態規劃)

題目 給定乙個整數陣列 nums 找到乙個具有最大和的連續子陣列 子陣列最少包含乙個元素 返回其最大和。示例 輸入 2,1,3,4,1,2,1,5,4 輸出 6 解釋 連續子陣列 4,1,2,1 的和最大,為 6。高階 如果你已經實現複雜度為 o n 的解法,嘗試使用更為精妙的分治法求解。思路 簡單...