当前位置: 首页 > news >正文

seo网站优化推荐外国设计师素材网站

seo网站优化推荐,外国设计师素材网站,胶州做网站,wordpress自己打包apk❓ 剑指 Offer 42. 连续子数组的最大和 难度:简单 输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。 要求时间复杂度为 O(n)。 示例1: 输入: nums [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子数组 [4,-1…

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

难度:简单

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

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

示例1:

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

提示

  • 1 < = a r r . l e n g t h < = 1 0 5 1 <= arr.length <= 10^5 1<=arr.length<=105
  • $-100 <= arr[i] <= 100

注意:本题与 53. 最大子数组和 相同。

💡思路:动态规划

定义 dp 数组, dp[i]代表以元素 nums[i] 为结尾的连续子数组最大和。

  • dp[i−1] < 0 ,说明 dp[i−1]dp[i] 产生负贡献,即 dp[i−1]+nums[i] 还不如 nums[i] 本身大。
    • dp[i−1]>=0 时,执行:
      d p [ i ] = d p [ i − 1 ] + n u m s [ i ] dp[i]=dp[i−1]+nums[i] dp[i]=dp[i1]+nums[i]
    • dp[i−1]<0 时,执行 :
      d p [ i ] = n u m s [ i ] dp[i]=nums[i] dp[i]=nums[i]
  • 初始状态: dp[0]=nums[0],即以 nums[0] 结尾的连续子数组最大和为nums[0]

优化

  • 观察发现 dp[i] 只与 dp[i−1]nums[i] 有关系,因此可以第一个变量 sum 存储 dp[i] 的值,即存储以元素 nums[i] 为结尾的连续子数组最大和。
  • 由于省去 dp 列表使用的额外空间,因此空间复杂度从 O ( n ) O(n) O(n) 降至 O ( 1 ) O(1) O(1)

🍁代码:(C++、Java)

C++

class Solution {
public:int maxSubArray(vector<int>& nums) {int ans = nums[0];int sum = 0;for(int num : nums){sum = sum < 0 ? num : sum + num;ans = max(ans, sum);}return ans;}
};

Java

class Solution {public int maxSubArray(int[] nums) {int ans = nums[0];int sum = 0;for(int num : nums){sum = sum < 0 ? num : sum + num;ans = Math.max(ans, sum);}return ans;}
}

🚀 运行结果:

在这里插入图片描述

🕔 复杂度分析:

  • 时间复杂度 O ( n ) O(n) O(n),其中 n 为数组 nums 的长度,我们只需要遍历一遍数组即可求得答案。
  • 空间复杂度 O ( 1 ) O(1) O(1),我们只需要常数空间存放若干变量。

题目来源:力扣。

放弃一件事很容易,每天能坚持一件事一定很酷,一起每日一题吧!
关注我LeetCode主页 / CSDN—力扣专栏,每日更新!

注: 如有不足,欢迎指正!

http://www.yayakq.cn/news/760485/

相关文章:

  • 服务器建站用哪个系统好创业做旅游网站
  • 龙岩做网站wordpress更换网站logo
  • 济南网站建设设计如何自己制作公司网站
  • app建站平台建设网站应该注意的地方
  • asp.net网站开发案例教程保山市城市建设网站
  • 如何理解电子商务网站建设与管理sem分析
  • 网站色差表网站导航广告怎么做
  • 成都锦江规划建设局网站个人优秀网站
  • 网站建设方案报价表刘强东当年做网站读的什么书
  • 建立一个公司自己的网站网站备案号没有-1
  • 吉林省建设工程监理检测网站济南网站建设泰观网络
  • 网站设计 广州如何管理建好的网站
  • 搭建网站有什么用不良网站进入窗口免费正能量
  • 企业网站源码 一品资源网cms企业网站
  • 个人代做网站中国外包公司
  • 外贸公司网站模板卡二卡三卡四精品
  • 莆田做网站豪车网站建设背景
  • 如何入侵网站后台推广神器
  • 做分销网站好吗logo图案生成器
  • 手机网站seo优化安康洗牙费用
  • 做网站如何月入10万济南小程序开发
  • psd网站wordpress装修模板制作
  • 山西网站建设免费wordpress用户登入界面
  • 网站访问者qq西安百度推广开户运营
  • 长沙大型网站建设重视网站商务通
  • 怎么用wordpress建站福州市工程建设质量管理网站
  • 阜宁做网站找哪家好获客软件
  • 自己制作免费网站网络营销的主要方式和技巧
  • 备案名 网站名郑州网站建设开发
  • 专业建设网站建站ui设计职业培训机构