劍指offer42題(2)
阿新 • • 發佈:2017-08-16
details pre cnblogs col str sta ring log stat
在網上查了另外一種方法,其實也算同一種。有一些動態規劃的思想。代碼如下:
package com.algorithm04; public class Algorithm42_2 { public int maxSumInSubArray(int[] array){ if(array.length<0) return 0; if(array.length==1) return array[0]; int max,begin,end,len; int[] c = new int[100]; begin = end = 0; max = 0; len = array.length; for(int i = 1 ; i < len ; i++){ if(c[i-1]>0) { c[i] = c[i-1] +array[i]; } else { c[i] = array[i]; begin= i; } if(c[i]>max){ max = c[i]; end = i; } } return max; } public static void main(String[] args) { Algorithm42_2 algorithm42_2 = new Algorithm42_2(); int[] arrays = newint[]{1,-2,3,10,-4,7,2,-5}; algorithm42_2.maxSumInSubArray(arrays); } }
參考http://blog.csdn.net/nciaebupt/article/details/8482077 代碼。灰常感謝!
劍指offer42題(2)