题解 | #连续子数组的最大和(二)#
连续子数组的最大和(二)
https://www.nowcoder.com/practice/11662ff51a714bbd8de809a89c481e21
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param array int整型一维数组 # @return int整型一维数组 # class Solution: def FindGreatestSumOfSubArray(self , array: List[int]) -> List[int]: # 需要记录最长空间 if not array: return [] left = 0 right = 0 max_left = 0 max_right = 0 max = 0 result = array[0] for i in range(len(array)): max += array[i] right = i + 1 # 只需要记录最大的index就可以 等于时计算为0的情况 因为需要数组长度最大 if max >= result: result = max max_left = left max_right = right if max < 0: max = 0 left = i + 1 return array[max_left:max_right]