美文网首页
53. Maximum Subarray

53. Maximum Subarray

作者: becauseyou_90cd | 来源:发表于2018-07-20 07:14 被阅读0次

https://leetcode.com/problems/maximum-subarray/description/

解题思路:

  1. 首先确定其是动态规划(最有子结构,重叠子问题,无后效性)
  2. 比较当前index的值和当前index值+index-1的sum值,其最大值为当前index的sum值,最后比较所有sum值得到最大子数组的值

代码如下:
class Solution {
public int maxSubArray(int[] nums) {

    int len = nums.length;
    if(len == 1) return nums[0];
    int[] dp = new int[len];
    dp[0] = nums[0];
    int max = dp[0];
    for(int i = 1; i < len; i++){
        dp[i] = Math.max(nums[i], nums[i] + dp[i - 1]);
        max = Math.max(dp[i], max);
    }
    return max;
}

}

相关文章

网友评论

      本文标题:53. Maximum Subarray

      本文链接:https://www.haomeiwen.com/subject/ivaxmftx.html