0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Maximum Subarray 最大子序和

汽车电子技术 来源:神经网络与强化学习 作者:Jemma Liu 2023-03-01 11:26 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

今天的题目是 53. Maximum Subarray 最大子序和

Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.

Example:

Input: [-2,1,-3,4,-1,2,1,-5,4],

Output: 6

Explanation: [4,-1,2,1] has the largest sum = 6.

Follow up:

If you have figured out the O(n) solution, try coding another solution using the divide and conquer approach, which is more subtle.

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

示例:

输入: [-2,1,-3,4,-1,2,1,-5,4],

输出: 6

解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。

进阶:

如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。


Solutions:

class Solution:
    def maxSubArray(self, nums: List[int]) -> int:
        max_sum = nums[0]
        lst = 0
       # if(len(nums)==1): return nums[0]
       '''
       设置一个累加值,一个next_item值,一个max_sum值进行比较。
       累加值是经过的数值累加的结果,next_item指示循环中的下一个新值,
       max_sum用来保留全局最大,并做返回值。
       '''
        for next_item in nums:
            lst = max(next_item,lst+next_item)
            max_sum = max(max_sum,lst)

        return max_sum
class Solution:
    def maxSubArray(self, nums: List[int]) -> int:
        '''
        用DP的思想来解,并对数组进行原地修改,修改后的值等于该位置之前的最大累加和。
        nums[0]不变,从nums[1]开始更新,对于i位置新值等于nums[i]和nums[i]+累加值
        nums[i-1]中最大项。如果nums[i]小于0则累加后数值变小,经过max之后会被筛选掉。
        最后返回nums数组中的最大值即可。
        '''
        for i in range(1, len(nums)):
            nums[i] = max(nums[i], nums[i] + nums[i - 1])
        return max(nums)
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 元素
    +关注

    关注

    0

    文章

    47

    浏览量

    8722
  • 连续
    +关注

    关注

    0

    文章

    16

    浏览量

    9006
  • 数组
    +关注

    关注

    1

    文章

    420

    浏览量

    27114
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【我是电子发烧友】正电流和负电流和零电流

    保护误动作,常采用两个第一段组成的四段式保护。灵敏一段是按躲过被保护线路末端单相或两相接地短路时出现的最大电流整定的。其动作电流小,保护范围大,但在单相故障切除后的非全相运行状态下被闭锁。这时
    发表于 06-21 16:18

    请问数组定义全部是0,节点最大子节点数目是多少呢?

    ] = [0]; uint8 CskipChldrn[1] = [0];数组定义全部是0,节点最大子节点数目是多少呢?
    发表于 05-22 04:56

    为什么架空输电线路的零电抗大于其正电抗?

    最大冲击电流出现的条件是什么?什么是派克变换?派克变换的意义是什么?什么是对称分量法?为什么架空输电线路的零电抗大于其正电抗(负电抗)?提高暂态稳定性的措施有哪些?
    发表于 10-25 06:00

    What is the maximum temperatur

    Problem What is the maximum temperature your PCB can handle?  Solution 130 Degrees C.266 Degrees F. Details:
    发表于 12-29 09:25 658次阅读

    什么是maximum DSL speeds

    什么是maximum DSL speeds  英文缩写: maximum DSL speeds 中文译名: 最高DSL速率 分 
    发表于 02-23 09:51 953次阅读

    保护的最大特点是什么_零保护特点详解

    保护是指在大短路电流接地系统中发生接地故障后,就有零电流、零电压和零功率出现,利用这些电气量构成保护接地短路的继电保护装置统称。
    发表于 02-07 14:39 1.5w次阅读
    零<b class='flag-5'>序</b>保护的<b class='flag-5'>最大</b>特点是什么_零<b class='flag-5'>序</b>保护特点详解

    电压是什么_零电压怎么计算

    本文开始对零电压的定义和正、负、零电压的区别进行了介绍,其次阐述了怎么计算零电压以及零
    发表于 02-24 11:49 10w次阅读

    保护有方向性吗_零保护的最大特点

    本文首先介绍了零保护的概念和零保护的特点,其次介绍了零保护的工作原理,最后阐述了零保护的方向性及原理。
    发表于 04-12 17:08 4.1w次阅读
    零<b class='flag-5'>序</b>保护有方向性吗_零<b class='flag-5'>序</b>保护的<b class='flag-5'>最大</b>特点

    数据结构与算法分析:最大子序列和问题之算法优化

    在这个问题中,最大子序列和可能在三处出现:即左半部序列、右半部序列、穿过中部从而占据左右两半部分的序列。前两种情况可以通过递归求解。而递归的基准情况(base cases)是序列只有一个元素(left == right),若该元素大于0,则返回该元素,否则返回0。
    的头像 发表于 04-26 17:07 3526次阅读

    最大子和,贪心解法

    从代码角度上来讲:遍历nums,从头开始用count累积,如果count一旦加上nums[i]变为负数,那么就应该从nums[i+1]开始从0累积count了,因为已经变为负数的count,只会拖累总和。
    的头像 发表于 05-10 10:37 1264次阅读

    C编程:“最大子数组的和” 的动态规划的解法

    最大子数组之和
    的头像 发表于 08-21 09:33 1646次阅读
    C编程:“<b class='flag-5'>最大子</b>数组的和” 的动态规划的解法

    、负、零分析

    在三相电力系统中,各相电压或电流依其先后顺序分别达到最大值(以正半波幅值为准)的次序,称为相
    的头像 发表于 06-30 09:23 9501次阅读
    正<b class='flag-5'>序</b>、负<b class='flag-5'>序</b>、零<b class='flag-5'>序</b>分析

    表使用注意事项

    一、相的概念 三相交流电势瞬时值到达正最大值有一定的先后次序,这种先后次序叫作相。如eA先到达正最大值,随后是 eB,最后是eC,此时的相
    的头像 发表于 09-26 10:50 3178次阅读

    什么是正电流?什么是负电流?什么是零电流?

    什么是正电流?什么是负电流?什么是零电流? 正电流:正电流是指在三相对称电压系统中,三相电流的相位角相同,大小相等,且按照a-b-
    的头像 发表于 02-04 09:43 2.1w次阅读

    、负和零的产生原因

    、负和零是电力系统中常用的三个概念,它们分别表示三相交流电的相关系。在电力系统中,三相交流电的相关系对于电力系统的稳定运行和设备
    的头像 发表于 07-15 10:51 1.4w次阅读