题目: 输入一个长度为n的整型数组array,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。 数据范围: 1 <= n <= 10^5 -100 <= a[i] <= 100

要求:时间复杂度为 O(n)O(n),空间复杂度为 O(n)O(n) 进阶:时间复杂度为 O(n)O(n),空间复杂度为 O(1)O(1)

一开始以为难,其实写起来很简单,只要和大于零,说明可以合并,不然就舍弃

```#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param array int整型一维数组 
# @return int整型
#
class Solution:
    def FindGreatestSumOfSubArray(self , array: List[int]) -> int:
        # write code here
        result = array[0]
        r = 0
        for i in array:
            r += i
            if(result < r):
                result = r
            if(r < 0):
                r = 0
        return result