Maximum Subarray

ref

http://blog.csdn.net/linhuanmars/article/details/21314059

 

DP经典题目,关于怎么动首尾部分,ref说的很明白

public class Solution {
    public int maxSubArray(int[] A) {
        if(A==null || A.length==0) return 0;
        int loc = A[0], sum=A[0];
        for(int i=1; i<A.length; i++){
           // loc = Math.max(loc, loc+A[i]);
           loc = Math.max(A[i], loc+A[i]); // 注意我的错法,是不是要加上以前的loc
            sum = Math.max(sum, loc);
        }
        return sum;
    }
}

 

posted @ 2015-04-14 10:52  世界到处都是小星星  阅读(100)  评论(0编辑  收藏  举报