[LC 53. 최대 서브 어레이

정수 배열을 지정해  nums가장 큰 합을 갖는 (적어도 하나 개의 번호를 포함하는) 인접한 서브 어레이를 발견하고 그 합을 반환한다.

예:

입력 : [-2,1, 설 포닐, -1,2,1, -5,4], 
출력 : 6 
명 : [4 [-1,2,1] 최대 합 = 6 보유 

시간 : O (N)
공간 : O (N)

1  해결책 :
 2      DEF maxSubArray (자기, nums리스트 [INT]) -> INT :
 3          경우 nums가 있다 없음 또는 LEN (nums) == 0 :
 4              
5          
6          sum_arr = [0] * 렌 (nums)
 7          sum_arr [0] = nums [0]
 8          max_res의 =의 nums [0]
 (9)          에 대한 I  범위 (1 , LEN (nums)) :
 10              의 경우 sum_arr [내가 - 1]> 0 :
 11                  sum_arr [I]는 =의 nums [I ] + sum_arr [I - 1 ]
12              다른 :
 13                  sum_arr [I]는 =의 nums [I]는
 14              max_res = 최대 (max_res, sum_arr [I])
 15          리턴 max_res

 

추천

출처www.cnblogs.com/xuanlu/p/11668980.html