子数组的最大累加和问题
生活随笔
收集整理的這篇文章主要介紹了
子数组的最大累加和问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目:
給定一個數組arr,返回子數組的最大累加和,?
例如,arr = [1, -2, 3, 5, -2, 6, 1],所有的子數組中,[3, 5, -2, 6]可以累加出最大的累加和為12,所以返回12。
基本思路
使用一個變量curSum記錄每一步的累加和,遍歷到正數curSum增加,遍歷到負數減小。當curSum < 0,說明累加到當前位置出現了小于0的結果,那么累加的這一部分肯定不能作為最大累加和子數組的前綴,此時令curSum = 0。使用一個全局變量記錄出現的最大累加和即可。
?
?
總結
以上是生活随笔為你收集整理的子数组的最大累加和问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最大值减去最小值小于或等于num的子数组
- 下一篇: 单调栈结构