Python 連續子數組的最大和

給一個數組,返回它的最大連續子序列的和。
例如{6,-3,-2,7,-15,1,2,2}連續子序列的和爲8(從第0個開始,到第3個爲止)

# -*-coding:utf-8 -*-
class Solution:
    def FindGreatestSumofSubArray(self, array):
        maxNum = None
        tmpNum = 0

        for i in array:
            if maxNum == None:
                maxNum = i
            if tmpNum + i < i:
                tmpNum = i
            else:
                tmpNum += i
            if maxNum < tmpNum:
                maxNum = tmpNum
        return maxNum

if __name__ == '__main__':
    array=[6,-3,-2,7,-15,1,2,2]
    s=Solution()
    print(s.FindGreatestSumofSubArray(array))

運行結果爲:
8

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章