前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Code】关关的刷题日记22——Leetcode 53. Maximum Subarray

【Code】关关的刷题日记22——Leetcode 53. Maximum Subarray

作者头像
WZEARW
发布2018-04-09 15:53:01
7640
发布2018-04-09 15:53:01
举报
文章被收录于专栏:专知专知

关小刷刷题 22——Leetcode 53. Maximum Subarray

题目

Find the contiguous subarray within an array (containing at least one number) which has the largest sum.

For example, given the array [-2,1,-3,4,-1,2,1,-5,4], the contiguous subarray [4,-1,2,1] has the largest sum = 6

题目的意思是找出连续子序列的最大和。

思路

思路:典型的动态规划问题,以第i个数为结尾的连续子序列最大和sum[i] 是 (sum[i-1]+nums[i], nums[i])中较大的数。不断更新re用来存前i个数中和最大的连续子序列的和。时间复杂度O(n).

代码语言:javascript
复制
class Solution {public:
    int maxSubArray(vector<int>& nums) {
        int sum=nums[0], re=nums[0];
        for(int i=1; i<nums.size();i++)
        {
            sum=max(sum+nums[i],nums[i]);
            re=max(sum,re);
        }
        return re;
    }};

照顾好自己的身体,控制好自己的情绪,加油!

以上就是关关关于这道题的总结经验,希望大家能够理解,有什么问题可以在我们的专知公众号平台上交流或者加我们的QQ专知-人工智能交流群 426491390,也可以加入专知——Leetcode刷题交流群(请先加微信小助手weixinhao: Rancho_Fang)。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-11-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 专知 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关小刷刷题 22——Leetcode 53. Maximum Subarray
  • 题目
  • 思路
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档