[1,-2,3,10,-4,7,2,-5]
18
输入的数组为{1,-2,3,10,—4,7,2,一5},和最大的子数组为{3,10,一4,7,2},因此输出为该子数组的和 18。
================================================================================================================================
解题思路:
我的思路是先判断这个数字大不大0,小于0的话呢,判断是当前的数字大,还是之前的和的数字大,然后更新最大数;大于0的话呢,之前数字的和继续往后加,但是要判断是之前和的数字大,还是现在加了这个数字大。比较复杂
看到讨论板上有更简单的做法,之前比较之前的数字加上当前数字大,还是当前数字大。然后再用这个数字和当前最大的子序列和进行比较,不需要判断多次这个数大于0还是小于0;
原文:https://www.cnblogs.com/hddandelion/p/15196362.html