天天看點

【算法資料結構Java實作】時間複雜度為O(n)的最大和序列1.背景2.代碼實作

             最大序列和問題一直以來是一個比較經典的算法題,看到這個問題,有很多解題的辦法。今天看到了一種時間複雜度隻為O(n)的解題算法,在這裡記錄下。

             思路很簡單,比方說有P1,P2,P3,P4.....這樣一個序列,我們從P1開始求和,比如說在P5時求和數小于零,就可以斷定。第一種情況,最大序列在P1~P5之間,或者說在P6~Pn之間。因為如果P1+P2+......+P5的和小于零,那麼它可以看成一個數,而且是序列第一個數,則任何一個最大序列都不會包含這個數。

/********************************

* 本文來自部落格  “李博Garvin“

******************************************/