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

英文网站建设 济南搜索热门关键词

英文网站建设 济南,搜索热门关键词,手机网站制作移动高端网站建设,免费企业网站怎么做leetcode 238 思路 可以在不使用除法的情况下,利用前缀积和后缀积来实现解答 前缀积:对每个位置,计算当前数字左侧的所有数字的乘积后缀积:对每个位置,计算当前数字右侧的所有数字的乘积 结合这两种思想&#xff0…

leetcode 238
在这里插入图片描述

思路

可以在不使用除法的情况下,利用前缀积后缀积来实现解答

  • 前缀积:对每个位置,计算当前数字左侧的所有数字的乘积
  • 后缀积:对每个位置,计算当前数字右侧的所有数字的乘积
    结合这两种思想,可以在一次遍历中完成计算
    步骤:
  • 第一次遍历,计算每个位置左侧的前缀积,并直接保存在 answer 中
  • 第二次遍历,从右往左计算右侧的后缀积,并与 answer 中存储的前缀积相乘,得到最终结果

前缀积部分
使用一个变量 prefix 初始化为 1,遍历数组 nums,对于每个位置 i,将 prefix 保存到 answer[i] 中,并更新 prefix 为 prefix * nums[i]。这样,answer[i] 存储的是 nums 数组中所有 i 左边元素的乘积
后缀积部分
使用一个变量 suffix 初始化为 1,从数组的右侧开始遍历。对于每个位置 i,将 suffix 与 answer[i] 相乘,更新 suffix 为 suffix * nums[i]。这样,answer[i] 最终保存的是 i 左右两边元素的乘积

时间复杂度:O(n) 空间复杂度:O(1)

假设nums = [1,2,3,4]
前缀积得到的nums = [1,1,2,6] 每个元素左侧的乘积
后缀积得到的nums = [24,12,8,6]

实现

var productExceptSelf = function (nums) {let len = nums.length;const answer = new Array(len).fill(1)let prefix = 1;// 计算前缀积for (let i = 0; i < nums.length; i++) {answer[i] = prefix;prefix *= nums[i]}let suffix = 1;// 计算后缀积for (let i = len - 1; i >= 0; i--) {answer[i] = answer[i] * suffix;suffix *= nums[i]}return answer;
};
http://www.dtcms.com/wzjs/406540.html

相关文章:

  • ipo和seoseo是什么平台
  • 何炅做的网站广告短视频运营公司
  • 网站如何做收录排行最受欢迎的十大培训课程
  • 沂seo网站推广竞价推广网络推广运营
  • 域名备案成功如何做网站优化 seo
  • .net做网站开发吗最新中高风险地区名单
  • 电子商务网站建设考卷怎么恶意点击对手竞价
  • 长沙公积金网站怎么做异动厦门网站制作全程服务
  • 河南天元建设公司网站宁波seo高级方法
  • 用drupal做的网站百度联盟广告收益
  • 芜湖互联网公司山东seo首页关键词优化
  • 海南房地产网站建设铜陵seo
  • 开淘宝的店铺网站怎么做留电话的广告网站
  • 专门做奢侈品的网站个人怎么在百度上做推广
  • 如何做网站的统计如何做推广最有效果
  • 做网站靠什么赚钱网站创建
  • 建立网站目录结构的意义网络营销的认识
  • 济南微信网站开发清远市发布
  • 织梦模板 行业网站seo软件推荐
  • 宁波建设银行搜索引擎优化seo优惠
  • 全屋定制十大名牌衣柜惠州seo报价
  • 高唐做网站建设的公司百度一下首页版
  • 如何建立新的企业网站营销网站定制公司
  • 移动网站设计教程百度云资源
  • 色91Av做爰网站推广关键词排名查询
  • 网站建设工具 hbuild公众号微博seo
  • 自助建微网站店铺如何运营和推广
  • 拟与 合作建设网站 请予审批西安网络公司
  • 重庆seo公司排名重庆seo代理计费
  • 天津seo公司网站什么平台推广效果最好