难度:简单

频率:159

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


解题思路 :动态规划(贪心)
解题方法
1.对数组进行遍历
2.有两个值,一个是最大连续子序列和为sum[前连续序列和],结果为ans。
3.只看两个数的情况下,如果第一个数是正数,那么肯定对后面有帮助。这个时候如果第二个数是正数,那么肯定会更大,如果是负数,就会变小。但是我们不去判断第二个数,而是去判断加了第二个数,跟最大值的比较。
4.如果大于最大值,则最大值变化,小于最大值,则最大值不变。
为什么要这么做呢? 比如说3 -2 5 虽然-2是负的,对现在它自己来说是负影响,但是-2+3=1,对后面的5来说确实正影响。
所以我们值判断前面±,正的就加sum+=a[i]。负的就舍弃掉,sum=a[i]。

class Solution {public int maxSubArray(int[] nums) {int ans = nums[0];//最终结果int sum = 0;for(int num: nums) {if(sum > 0) {sum += num;} else {sum = num;}ans = Math.max(ans, sum); // 进行比较,去=取最大值}return ans;}
}

leetcode 53.最大子序和相关推荐

  1. leetcode 53. 最大子序和 动态规划解法、贪心法以及二分法

    题目 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子 ...

  2. leetcode - 53. 最大子序和 152. 乘积最大子序列 - 两个算法之间的联系和区别

    这两道算法题的解题思路是差不多的,但是从整体上分析,乘积最大子序列之和是最大子序和的进阶.先来看看两道算法题的简单描述. 53.最大子序和 给定一个整数数组 nums ,找到一个具有最大和的连续子数组 ...

  3. leetcode - 53. 最大子序和

    53. 最大子序和 - 动态规划 -------------------------------------- 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素), ...

  4. LeetCode 53. 最大子序和(动态规划)

    文章目录 1. 题目描述 2. 解题 2.1 暴力求解 2.2 动态规划 1. 题目描述 题目链接:https://leetcode-cn.com/problems/maximum-subarray/ ...

  5. LeetCode 53:最大子序和解题以及优化思路(第一次独立刷题记录)

    给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子数组 ...

  6. LeetCode 53最大子序和

    力扣 思路: 「连续」是关键字,连续很重要,不是子序列. 动态规划 详细解答请参考力扣 定义dp数组:        dp [i] 表示以nums[i]结尾的最大连续子数组的和 状态转移方程:    ...

  7. LeetCode 53. 最大子序和(Maximum Subarray)

    第一次提交成功 class Solution { public:int maxSubArray(vector<int>& nums) {if (nums.size() == 1) ...

  8. leetcode 53. 最大子序和(C语言)

    题目 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子 ...

  9. [leetcode] 53.最大子序和

    给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例 1: 输入:nums = [-2,1,-3,4,-1,2,1,-5,4] 输出:6 解释: ...

最新文章

  1. arm指令中mov和ldr及ldr伪指令的区别
  2. 【Android 组件化】路由组件 ( 路由框架概述 )
  3. 五子棋游戏设计VHDL语言
  4. c语言合法自定义标识符_c语言合法标识符的要求是什么
  5. mysql同步三张表如何用事务_MySql-第三部分(外键, 多表连接, 事务,视图 )
  6. javashop 发布开源放大镜HiZoom插件
  7. 人人车创始人李健的创业之路
  8. PyTorch非线性函数拟合
  9. 麒麟820 soc鸿蒙系统,麒麟1020 SoC和麒麟820:华为下一代芯片?
  10. skywalking本地配置探针 打TID
  11. 跌倒智能监测警报系统市场现状及未来发展趋势分析
  12. 【Codeforces】1051F. The Shortest Statement【MST+LCA+最短路】
  13. 关于亚健康(KK记)
  14. 【璟丰机电】美国派克Parker产品在FPD中的行业应用案例盘点
  15. web开发—— 前端基础(6) ——语义化标签
  16. pod spec lint 报错 fatal: Remote branch 0.1.3 not found in upstream origin
  17. 2015 史考特(Scottrade)开户指南 + 招商银行香港一卡通汇款【图文教程】
  18. 快速幂算法(c语言)
  19. 关于s19赛季服务器维修,S19赛季已开服,版本重点调整需知熟,想要跟上游戏节奏必了解...
  20. react-native调用Android原生UI组件

热门文章

  1. 通过邮箱验证注册——.net代码
  2. 全局变量、静态全局变量、静态局部变量和局部变量的区别
  3. linux 定时任务
  4. 从零开始搭建物联网平台(6):消息的持久化
  5. php定义常量 define vs const
  6. @ConditionalOnMissingBean注解理解
  7. nginx web服务理论与实战
  8. 等待多个并发事件完成的模型
  9. oracle 中关于null的操作
  10. string和json转换的简单应用