方法一:动态规划
比如数组a为1 -2 3 -6 5 3 -2 3 -7
f(i)表示以i结尾的最大字数组和,那么
f(i)=f(i-1)+a[i],f(i-1)>0;
f(i)=a[i],f(i-1)<=0;
方法二:
重头遍历数组,把累加了和存放到max值中,
当max值<0,把之前的记录忽略掉,存放当前值指针位置到start
当max值>0,且max比加之前小,max值保持不变
当max值>0,且max比加之前大,max赋新值,记录end节点。
方法一:动态规划
比如数组a为1 -2 3 -6 5 3 -2 3 -7
f(i)表示以i结尾的最大字数组和,那么
f(i)=f(i-1)+a[i],f(i-1)>0;
f(i)=a[i],f(i-1)<=0;
方法二:
重头遍历数组,把累加了和存放到max值中,
当max值<0,把之前的记录忽略掉,存放当前值指针位置到start
当max值>0,且max比加之前小,max值保持不变
当max值>0,且max比加之前大,max赋新值,记录end节点。