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

网站建设推广怎么做百度免费资源网站

网站建设推广怎么做,百度免费资源网站,设计师网站prinest,成人本科报名费一般多少钱给你一个整数数组 nums ,请你找出数组中乘积最大的非空连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。 测试用例的答案是一个 32-位 整数。 示例 1: 输入: nums [2,3,-2,4] 输出:6解释: 子数组 [2,3] 有最…

给你一个整数数组 nums ,请你找出数组中乘积最大的非空连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。

测试用例的答案是一个 32-位 整数。

示例 1:

输入: nums = [2,3,-2,4]
输出:6解释: 子数组 [2,3] 有最大乘积 6。

示例 2:

输入: nums = [-2,0,-1]
输出: 0
解释: 结果不能为 2, 因为 [-2,-1] 不是子数组。

提示:

  • 1 <= nums.length <= 2 * 104
  • -10 <= nums[i] <= 10
  • nums 的任何子数组的乘积都 保证 是一个 32-位 整数

 要求非空连续子数组对应的最大乘积,由于数组中都是整数,首先应该想到乘积是乘的数越多乘积越大,但是前提是相乘之后为正数。

题目中数组中存在负数,那么会导致最大的值变的最小最小的值变的最大

于是我们可以通过遍历数组,定义一个初始值为1的变量,依次乘以数组的值,每次取最大值,但是只从前往后乘,会出现 -2,2,2,2,2这种情况,导致最大值一直是负数,但是实际上最大值应该是2*2*2*2。因此我们可以再从后往前乘,就能求出上述例子的最大值。下面给出实际代码:

class Solution {public int maxProduct(int[] nums) {int n = nums.length;int res = nums[0];int x = 1;for(int i = 0;i < n;i++){x *= nums[i];res = Math.max(res,x);if(nums[i] == 0) x = 1;}x = 1;for(int i = n - 1;i >= 0;i--){x *= nums[i];res = Math.max(res,x);if(nums[i] == 0) x = 1;}return res;}
}

 方法二:动态规划

由上述分析可知,数组中存在负数,那么会导致最大的值变的最小最小的值变的最大

因此我们需要维护两个数组,一个存储最大值,一个存储最小值,每次对比当前值和二者乘以当前数,取三者最大值。

imax[i] = Math.max(Math.max(imax[i-1] * x,imin[i-1] * x),x);

下面给出代码

class Solution {public int maxProduct(int[] nums) {int n = nums.length;int res = nums[0];int[] imax = new int[n];int[] imin = new int[n];imax[0] = imin[0] = nums[0];for(int i = 1;i < n;i++){int x = nums[i];imax[i] = Math.max(Math.max(imax[i-1] * x,imin[i-1] * x),x);imin[i] = Math.min(Math.min(imin[i-1] * x,imax[i-1] * x),x);res = Math.max(res,imax[i]);}return res;}
}

http://www.dtcms.com/wzjs/266695.html

相关文章:

  • 网站建设如何测试百度首页登录
  • 网站这么做排名优化公司哪家效果好
  • 泰安建设工程招聘信息网站营销推广网站
  • 贵州贵州省住房和城乡建设厅网站连接交换
  • 惠州做网站 百度优化南昌关键词优化软件
  • 英文网站名需要斜体吗google翻译
  • laravel网站怎么做项目大学生创新创业大赛
  • 公司网站建设需要些什么要求全国疫情今天最新消息
  • 自己做优惠劵网站百度推广充值必须5000吗
  • 台州路桥区企业全网seo优化外链seo推广
  • 青岛专业做网站的公司有哪些整合营销传播方案案例
  • 钓鱼博彩网站怎么做市场调研模板
  • 免费建站建站2021最近比较火的营销事件
  • 专业设计自学网站宁波seo排名优化
  • 阳江招聘网站哪个靠谱线上推广平台
  • 泉州网站排名网络服务主要包括什么
  • 网站后台需求刷粉网站推广快点
  • 大学生可以做的网站批量查询权重
  • 我的校园网站制作怎么做优化关键词
  • 快速网站建设价格竞价推广和seo的区别
  • vue做的博客网站今天国际新闻
  • 手游发号网站模板加入网络营销公司
  • 网站做推广的团队沈阳网页建站模板
  • 佛山网站建设怎么做网址网域ip地址查询
  • 做外围代理要有自己的网站关键词工具网站
  • 呼和浩特网站建设价位百度推广最简单方法
  • php盗版视频网站怎么做的湖南靠谱seo优化报价
  • 公司做网站都需要什么流程软文网站平台
  • 电子商务网站有那些功能搜索引擎技术
  • web前端只做网站么企业自助建站