子陣列的最大累加和問題

2021-10-25 05:31:33 字數 612 閱讀 4232

題目描述

給定乙個陣列arr,返回子陣列的最大累加和

例如,arr = [1, -2, 3, 5, -2, 6, -1],所有子陣列中,[3, 5, -2, 6]可以累加出最大的和12,所以返回12.

[要求]

時間複雜度為o(n)o(n),空間複雜度為o(1)o(1)

示例輸入

[1, -2, 3, 5, -2, 6, -1]

輸出12

思路描述

動態規劃,拆成小問題來解決,同時考慮陣列為空,以及陣列為1個元素的情況,大部分情況用來判定當前位置元素和前一位置元素相加會不會比當前位置元素大的情況,若大,則更新陣列該位置處的元素,否則保留,那麼存留在陣列中的元素值都是子陣列的累加和的值,從中選出最大的值即可。

**描述

class

solution

int currmax = arr[0]

;for

(int i=

0;isize()

;i++

)return currmax;}}

;

子陣列的最大累加和問題

題目 給定乙個陣列arr,返回子陣列中的最大累加和。例如,arr 1,2,3,5,2,6,1 其中子陣列 3,5,2,6 累加和最大為12,故返回12.要求 時間複雜度為o n 額外空間複雜度為o 1 public static void main string args int r maxson1...

子陣列的最大累加和問題

子陣列的最大累加和問題 給定乙個陣列arr,返回子陣列的最大累加和 例如,arr 1,2,3,5,2,6,1 所有子陣列中,3,5,2,6 可以累加出最大的和12,所以返回12.要求 時間複雜度為o n o n o n 空間複雜度為o 1 o 1 o 1 輸入描述 第一行乙個整數n。表示陣列長度 接...

子陣列的最大累加和問題

傳送門 給定乙個陣列arr,返回子陣列的最大累加和 例如,arr 1,2,3,5,2,6,1 所有子陣列中,3,5,2,6 可以累加出最大的和12,所以返回12.要求 時間複雜度為o n 空間複雜度為o 1 輸入 1,2,3,5,2,6,1 輸出 掃一遍所有數字,同時記錄當前的累加和ans,如果累加...