问题描述:
例如:[6,-3,-2,7,-15,1,2,2]求连续子数组中的最大和,此数组中最大和为8,从arr[0]到arr[3]。其余位置都比这个要小。
最大连续子数组的特点:
(1)第一个不为负数
(2)如果前面数的累加加上当前数小于当前数,说明这次累加对总体的结果是无效的;如果前面数的累加加上当前数大于当前数,说明这次累加对结果是具有促进效果的,结果在考虑的范围内。
python实现代码如下:
def find_sub(arr):
#定义两个变量,一个用来存放之前的累加值,一个用来存储当前的最大和