输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。

要求时间复杂度为O(n)。

示例1:

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

提示:

1 <= arr.length <= 10^5
-100 <= arr[i] <= 100

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/lian-xu-zi-shu-zu-de-zui-da-he-lcof
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

思路:首先最小子数组最少都要有一个值,然后每个数字都有选和不选两种选择,如果选的话那就是dp[i-1]+本身,不选的话就是本身。
表达式为dp[i] = Math.max(nums[i],dp[i-1]+nums[i]);

class Solution {public int maxSubArray(int[] nums) {int len = nums.length;int[] dp = new int[len];dp[0] = nums[0];int max = dp[0];for(int i=1;i<len;i++){//最大值,如果这个数字是负增益的,那就让他一个人呆着吧dp[i] = Math.max(nums[i],dp[i-1]+nums[i]);max = Math.max(max,dp[i]);}return max;}
}

剑指 Offer 42. 连续子数组的最大和java相关推荐

  1. 【LeetCode】剑指 Offer 42. 连续子数组的最大和

    [LeetCode]剑指 Offer 42. 连续子数组的最大和 文章目录 [LeetCode]剑指 Offer 42. 连续子数组的最大和 一.动态规划 一.动态规划 状态定义 设动态规划列表 dp ...

  2. 剑指 Offer 42. 连续子数组的最大和(官解)

    14天阅读挑战赛 努力是为了不平庸~ 算法学习有些时候是枯燥的,这一次,让我们先人一步,趣学算法!欢迎记录下你的那些努力时刻(算法学习知识点/算法题解/遇到的算法bug/等等),在分享的同时加深对于算 ...

  3. LeetCode -- 剑指 Offer 42. 连续子数组的最大和

    剑指 Offer 42. 连续子数组的最大和 线性 DP 题. 针对于数组nums[i] 而言,以它为结尾的子数组分两种情况:(题目限制:必须是连续数组) num[i] 自身作为独立子数组:f[i] ...

  4. 剑指 Offer 42. 连续子数组的最大和

    摘要 剑指 Offer 42. 连续子数组的最大和 一. 动态规划分析 1.1 动态规划思路分析 假设nums数组的长度是n,下标从0到n−1.我们用 f(i)代表以第i个数结尾的连续子数组的最大和, ...

  5. 【最佳解法】剑指 Offer 42. 连续子数组的最大和

    我是小张同学,立志用最简洁的代码做最高效的表达 思路:动态规划 假设nums\textit{nums}nums 数组的长度是 nnn,下标从 000 到 n−1n-1n−1. 我们用 f(i)f(i) ...

  6. Leetcode 剑指 Offer 42. 连续子数组的最大和 (每日一题 20211014)

    输入一个整型数组,数组中的一个或连续多个整数组成一个子数组.求所有子数组的和的最大值.要求时间复杂度为O(n).示例1:输入: nums = [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 ...

  7. leetcode剑指 Offer 42. 连续子数组的最大和(动态规划)

    输入一个整型数组,数组里有正数也有负数.数组中的一个或连续多个整数组成一个子数组.求所有子数组的和的最大值. 要求时间复杂度为O(n). 示例1: 输入: nums = [-2,1,-3,4,-1,2 ...

  8. 【算法】剑指 Offer 42. 连续子数组的最大和 【重刷】

    1.概述 输入一个整型数组,数组中的一个或连续多个整数组成一个子数组.求所有子数组的和的最大值. 要求时间复杂度为O(n). 示例1: 输入: nums = [-2,1,-3,4,-1,<

  9. 剑指offer:连续子数组的最大和

    题目描述 小米2020届笔试题 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学.今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很 ...

最新文章

  1. IE下javascript的console方法
  2. apt-get 404 not found 问题解决
  3. Latex Smartdiagram
  4. c++计算eigen随笔(1)
  5. Problem F: 时间类的构造和输出
  6. 7-55 求整数序列中出现次数最多的数 (15 分)
  7. 测试:fiddler使用
  8. oracle连接总结(内连接、外连接、自然连接,交叉连接,自连接)
  9. blob js 下载word乱码_这几个相见恨晚的PDF转换成Word技巧,请收好
  10. Tomcat错误解决
  11. DE12 Continuation: General Theory for Inhomogeneous ODEs
  12. JSP的自定义标签(五)之Tag File
  13. JAVA项目之图书管理系统
  14. java学生成绩管理系统不使用数据库_java学生成绩管理系统(不用数据库,用txt),写出来有报酬...
  15. Anylogic问题-----模型运行中外部输入控制模型
  16. 单片机入门--常见单片机PIC\STM32
  17. C# 之 TcpClient和Socket
  18. 关于微信公众号的迁移,在此记录一下
  19. powerdesigner中把用例关系线设置成直线
  20. 编写lisp程序解一元二次方程_vb解一元二次方程代码

热门文章

  1. 若依对接企业微信JS-DK
  2. 新加坡区块链ICO公司是如何注册新加坡公司的
  3. 有AI就不搬砖?超乎你的想象!道翰天琼认知智能机器人平台API接口大脑为您揭秘-1。
  4. 图像分割之(四)OpenCV的GrabCut函数使用和源码解读
  5. 电商跟微商的区别是什么呢
  6. matlab绕线式三级串阻,三相绕线式异步电动机转子串电阻起动的MATLAB仿真
  7. 企业微信渠道二维码如何制作?
  8. PhotoShop将彩色图片修改为只有黑白线条
  9. hp 服务器硬盘背板 供电线,100元淘了一个HP 6位硬盘笼+背板+线,准备用旧机改一个DSM。...
  10. opencv4.5.2嵌入式移植