首页 > 其他 > 详细

Leetcode 53 最大子串和

时间:2019-06-06 19:05:58      阅读:84      评论:0      收藏:0      [点我收藏+]

给定数列 nums

dp[i] ——以nums[i]为结尾的子串的最大和 ***

开始:dp[0]=nums[0]

状态转移:dp[i] = max( dp[i-1]+nums[i],nums[i] )

 

class Solution {
public:
    static const int INF = 0x7fffffff;
    int maxSubArray(vector<int>& nums) {
        int len = nums.size();
        int maxn = INF*(-1);
        vector<int> dp(len);
        if (nums.size() == 0)return 0;
        for (int i = 0;i < len;i++) {
            if (i == 0) dp[0] = nums[0];
            else
            dp[i] = max(nums[i] + dp[i - 1], nums[i]);
            if (dp[i] > maxn)maxn = dp[i];
        }
        return maxn;
    }
};

 

Leetcode 53 最大子串和

原文:https://www.cnblogs.com/suuusu/p/10986497.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!