/**
**动态规划,数组值累加 >0取累加值 <0 取0。
*/
public static int getMaxSubArraySum(int [] array){ if (array.length==1){return array[0];} int [] d=new int[array.length]; d[0]=array[0]; int res=array[0]; for (int i = 1; i < array.length; i++) { d[i]= Math.max(0,d[i-1])+array[i]; res=Math.max(d[i],res); } return res; }