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

温州网站优化指导一个新手怎么做推广

温州网站优化指导,一个新手怎么做推广,b2b行业网站开发,宿州哪家做网站不做题目: 给你一个整数数组 nums ,请你找出数组中乘积最大的非空连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。 思路 由于做了53. 最大子数组和 下意识觉得求出所有元素的以该元素结尾的连续…

题目:

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

思路

由于做了53. 最大子数组和

下意识觉得求出所有元素的以该元素结尾的连续子数组的最大值,然后最大值数组里求最大值。

如何求以某个元素结尾的连续子数组最大值呢?

首先约定:

preMax 表示以前一个元素结尾的连续子数组的最大值,

preMin 表示以前一个元素结尾的连续子数组的最小值

由于思维定势,会觉得是 max = Math.max(元素A,元素A*preMax )。

但是这样是错误的。

例如:[-2,3,-2]

第一个元素最大值是 -2 ,第二个元素最大值是3,第三个元素最大值是12。

但是根据公式,第三个元素最大值 = Math.max(-2*3,-2)= -2.

原因就在于数组里的元素是有正负的,如果只是正数,那么这个方式是可以的。

所以如何求以某个元素结尾的最大值呢?

如果该元素是负数,max = Math.max( 元素, 元素*preMin )

如果该元素是正数,max = Math.max( 元素, 元素*preMax)

因此对于每个元素都要记录最小值与最大值。

如果该元素是负数,max = Math.max( 元素, 元素preMin) min = Math.min( 元素, 元素preMax)

如果该元素是正数,max = Math.max( 元素, 元素preMax) min = Math.min( 元素, 元素preMin)

max = Math.max(元素, 元素preMin,元素preMax)

min = Math.min( 元素, 元素preMin,元素preMax)

var maxProduct = function(nums) {let res = nums[0];let max = 1;let min = 1;for(let num of nums){let temp = max;max = Math.max(max*num, num,min*num);// max 应该是以前面一个元素结尾的连续子数组的max,不应该是处理后的max,用temp接收min = Math.min(min*num,num,temp*num);res = Math.max(res, max);}return res;
};
http://www.yidumall.com/news/21480.html

相关文章:

  • 制作网页教程的注意事项春哥seo博客
  • app推广方法谷歌seo最好的公司
  • wordpress后台教程网北京seo技术
  • 幼儿园建设网站企业官网网络营销渠道策略有哪些
  • 近期10大新闻事件seo自学网app
  • 广州项目网络推广性价比网页优化公司
  • 中建交通建设集团有限公司网站爱站网长尾关键词搜索
  • 菏泽做网站的公司怎么网站推广
  • 招聘wordpress网站高手兼职客服外包平台
  • 个人简历电子版可编辑seo案例
  • 网站制作(信科网络)百度seo优化网站
  • 网站建设行业 前景推广app有哪些
  • linode wordpress建站网站制作河南
  • 网站可以做赌博广告seo关键词排名优化系统
  • 免费做房产网站百度推广客户端官方下载
  • wordpress 4.8漏洞长沙seo网站排名
  • 做网站后都需要什么seo入门培训
  • 河北监理工程师考试最新消息郑州seo技术
  • 网站建设广告有哪些平台广州广告公司
  • 小火花自媒体平台网站优化推广方法
  • 做黏土的网站灰色行业seo
  • 建设品牌网站免费人脉推广
  • 在线做六级阅读网站没被屏蔽的国外新闻网站
  • 做公司月刊网站全网整合营销推广方案
  • 腾讯微博做网站外链步骤短视频seo关键词
  • 跳舞游戏做的广告视频网站学网络与新媒体后悔死了
  • 网站建设在整体布局有哪些要求江苏seo排名
  • 单页网站建设一级域名生成二级域名
  • 如何在网站页面做标注谷歌商店官网下载
  • 网站怎么在百度搜不到软件开发培训机构排名