劍指offer42:連續子陣列的最大和
輸入乙個整型陣列,陣列裡有正數也有負數。陣列中的乙個或連續多個整數組成乙個子陣列。求所有子陣列的和的最大值,要求時間複雜度為o(n)
例如:,連續子向量的最大和為8(從第0個開始,到第3個為止)。
記錄乙個當前連續子陣列最大值max
預設值為陣列第一項
記錄乙個當前連續子陣列累加值sum
預設值為陣列第一項
1.從陣列第二個數開始,若sum<0
則當前的sum
不再對後面的累加有貢獻,sum = 當前數
2.若sum>0
則sum = sum + 當前數
3.比較sum
和max
,max = 兩者最大值
?資料結構專欄:劍指 offer 題解 + js **
?github筆記 :ruoruochen github
劍指offer連續子數的最大和
輸入乙個整型陣列,陣列裡有正數也有負數。陣列中的乙個或連續多個整數組成乙個子陣列。求所有子陣列的和的最大值。要求時間複雜度為 o n 動態規劃思想 轉移方程 dp i 1 0 時,dp i dp i 1 array i dp i 1 0 時,dp i array i dp i 1 小於0,則認為其毫...
面試題42 劍指offer 連續子陣列的最大和
題目 輸入乙個整型陣列,陣列裡有正數也有負數。陣列中乙個或連續的多個整數組成乙個子陣列。求所有子陣列的和的最大值。要求時間複雜度為o n 思路 使用動態規劃,dp i 為以i為尾的連續子陣列的最大和,dp i math.max dp i 1 array i array i 如果dp i 1 arra...
劍指offer第42題 連續子陣列的最大和
輸入乙個整型陣列,陣列中的乙個或連續多個整數組成乙個子陣列。求所有子陣列的和的最大值。要求時間複雜度為o n 示例1 輸入 nums 2,1,3,4 1,2,1,5,4 輸出 6解釋 連續子陣列 4,1,2 1 的和最大,為 6。由於這題有時間複雜度的要求,所以不能使用雙重迴圈的暴力法,會超時。這題...