力扣算法题目(最大子数组的和)-创新互联

53,大子数组的和 题目描述

给你一个整数数组 nums ,请你找出一个具有大和的连续子数组(子数组最少包含一个元素),返回其大和。

创新互联公司是一家专注于网站设计、成都网站建设与策划设计,忠县网站建设哪家好?创新互联公司做网站,专注于网站建设十年,网设计领域的专业建站公司;建站业务涵盖:忠县等地区。忠县做网站价格咨询:18982081108

子数组 是数组中的一个连续部分。

示例
输入:nums = [-2,1,-3,4,-1,2,1,-5,4]
输出:6
解释:连续子数组 [4,-1,2,1] 的和大,为 6 。

输入:nums = [1]
输出:1
题解

思路:

动态规划
 主要思路:
 维护一个和nums数组长度相等的数组,用来记录1-i之间和大的那个
 状态转移就是将nums[i] 和 nums[i] + dp[i - 1]相比较,哪个大就留下那个

代码:

var maxSubArray = function(nums) {const n = nums.length
    // 创建dp数组
    const dp = new Array(n).fill(Number.MIN_VALUE)
    // 初始化dp数组
    dp[0] = nums[0]
    let res = dp[0]
    // 状态转移
    for(let i = 1;i< n;i++){dp[i] = Math.max(dp[i - 1] + nums[i], nums[i])
        res = Math.max(res, dp[i])
    }
    return res
};
原题链接

原题链接

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧

文章标题:力扣算法题目(最大子数组的和)-创新互联
标题网址:https://www.cdcxhl.com/article26/dhpjjg.html

成都网站建设公司_创新互联,为您提供App设计移动网站建设品牌网站制作网站收录网站导航网站设计

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

外贸网站建设