动态规划

设动态规划列表 dp,dp[i] 代表以元素 array[i] 为结尾的连续子数组最大和。

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param array int整型一维数组 
     * @return int整型
     */
    public int FindGreatestSumOfSubArray (int[] array) {
        // write code here
        int len=array.length;
        int[] dp=new int[len];//代表以元素 array[i] 为结尾的连续子数组最大和
        dp[0]=array[0];
        int max=array[0];
        for(int i=1;i<len;i++){
            dp[i]=Math.max(dp[i-1]+array[i],array[i]);
            max=Math.max(dp[i],max);
        }
        return max;

    }
}