leetcode 53.最大子序和
难度:简单
频率: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.最大子序和相关推荐
- leetcode 53. 最大子序和 动态规划解法、贪心法以及二分法
题目 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子 ...
- leetcode - 53. 最大子序和 152. 乘积最大子序列 - 两个算法之间的联系和区别
这两道算法题的解题思路是差不多的,但是从整体上分析,乘积最大子序列之和是最大子序和的进阶.先来看看两道算法题的简单描述. 53.最大子序和 给定一个整数数组 nums ,找到一个具有最大和的连续子数组 ...
- leetcode - 53. 最大子序和
53. 最大子序和 - 动态规划 -------------------------------------- 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素), ...
- LeetCode 53. 最大子序和(动态规划)
文章目录 1. 题目描述 2. 解题 2.1 暴力求解 2.2 动态规划 1. 题目描述 题目链接:https://leetcode-cn.com/problems/maximum-subarray/ ...
- LeetCode 53:最大子序和解题以及优化思路(第一次独立刷题记录)
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子数组 ...
- LeetCode 53最大子序和
力扣 思路: 「连续」是关键字,连续很重要,不是子序列. 动态规划 详细解答请参考力扣 定义dp数组: dp [i] 表示以nums[i]结尾的最大连续子数组的和 状态转移方程: ...
- LeetCode 53. 最大子序和(Maximum Subarray)
第一次提交成功 class Solution { public:int maxSubArray(vector<int>& nums) {if (nums.size() == 1) ...
- leetcode 53. 最大子序和(C语言)
题目 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子 ...
- [leetcode] 53.最大子序和
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. 示例 1: 输入:nums = [-2,1,-3,4,-1,2,1,-5,4] 输出:6 解释: ...
最新文章
- arm指令中mov和ldr及ldr伪指令的区别
- 【Android 组件化】路由组件 ( 路由框架概述 )
- 五子棋游戏设计VHDL语言
- c语言合法自定义标识符_c语言合法标识符的要求是什么
- mysql同步三张表如何用事务_MySql-第三部分(外键, 多表连接, 事务,视图 )
- javashop 发布开源放大镜HiZoom插件
- 人人车创始人李健的创业之路
- PyTorch非线性函数拟合
- 麒麟820 soc鸿蒙系统,麒麟1020 SoC和麒麟820:华为下一代芯片?
- skywalking本地配置探针 打TID
- 跌倒智能监测警报系统市场现状及未来发展趋势分析
- 【Codeforces】1051F. The Shortest Statement【MST+LCA+最短路】
- 关于亚健康(KK记)
- 【璟丰机电】美国派克Parker产品在FPD中的行业应用案例盘点
- web开发—— 前端基础(6) ——语义化标签
- pod spec lint 报错 fatal: Remote branch 0.1.3 not found in upstream origin
- 2015 史考特(Scottrade)开户指南 + 招商银行香港一卡通汇款【图文教程】
- 快速幂算法(c语言)
- 关于s19赛季服务器维修,S19赛季已开服,版本重点调整需知熟,想要跟上游戏节奏必了解...
- react-native调用Android原生UI组件