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

津做网站百度公司在哪里

津做网站,百度公司在哪里,wordpress的静态页面保存在哪里,自己可以做公司网站吗题目 给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复…

题目

给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。
题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。
请 不要使用除法,且在 O(n) 时间复杂度内完成此题。

一、代码实现

func productExceptSelf(nums []int) []int {n := len(nums)answer := make([]int, n)// 计算左侧乘积answer[0] = 1for i := 1; i < n; i++ {answer[i] = answer[i-1] * nums[i-1]}// 计算右侧乘积并合并结果right := 1for i := n-1; i >= 0; i-- {answer[i] *= rightright *= nums[i]}return answer
}

二、算法分析

1. 核心思路

左右乘积分解:将每个位置的乘积拆分为左侧所有元素的乘积和右侧所有元素的乘积的积。
空间优化:复用输出数组,先存储左侧乘积,再动态计算右侧乘积并直接合并。

2. 关键步骤
  1. 左侧乘积计算:从左到右遍历,将每个位置的左侧乘积存入 answer 数组。
  2. 右侧乘积计算与合并:从右到左遍历,用变量 right 动态累积右侧乘积,并同步更新 answer 数组。
3. 复杂度

时间复杂度O(n),两次独立的线性遍历。
空间复杂度O(1)(不考虑输出数组的空间),仅使用常数额外空间。

三、图解

在这里插入图片描述

四、边界条件与扩展

1. 边界条件

全零数组:如 nums = [0,0,0] → 结果为 [0,0,0]
单个零元素:如 nums = [0,1,2] → 结果为 [2, 0, 0]
数组长度为1:如 nums = [5] → 结果为 [1](无其他元素可乘)。

2. 扩展验证

负数情况:如 nums = [-1, 2, -3] → 结果为 [-6, 3, -2]
大数溢出:题目保证结果在 32 位整数范围内,无需额外处理。

五、总结

核心逻辑:通过左右分解避免重复计算,两次遍历实现高效求解。
优化关键:复用输出数组存储中间结果,空间复杂度从 O(n) 优化至 O(1)
适用场景:类似“利用前后缀信息”的问题(如统计前后缀最大值、求和等)。

http://www.dtcms.com/a/407429.html

相关文章:

  • 运用.net做网站做网站不知道做什么内容的
  • 4、除了常见的 services(业务微服务)和 gateway(API 网关)模块外,还必须建立一系列支撑性、平台级、基础设施类模块
  • 十堰的网站建设网站资料库建设的功能需求
  • 国家企业信用网查询系统杭州网站建设优化
  • ApplicationContext接口实现(二)
  • BMAD方法论:敏捷价值、原则映射与全生命周期技术
  • 龙游网站建设专业网站建设代理
  • 《道德经》第一章
  • dinov3 foreground_segmentation.ipynb魔改py ,不走torch.hub 训练
  • 广饶县住房和城乡建设局网站系统下载 网站 源码
  • 重庆建站塔山双喜烟台网站设计制作公司电话
  • 杭州网站制作报价移动网站建站视频
  • 如何进行网站改版设计大型网站开发实战
  • 【C++】深入理解string类(1)
  • 浙江省建设厅官方网站移动互联网应用程序个人信息保护管理暂行规定(征求意见稿)
  • 兖州中材建设有限公司网站苏州的网络公司网站建设
  • 26X00.6588_GE_RELEASE_SVC_IM.250918-1932_CLIENT_IOT_LTSC_OEM_X64FRE_ZH-CN.iso
  • 旅游电子商务网站建设小百姓这个网站谁做的
  • Linux系统--进程信号
  • 门户网站盈利选服务好的佛山网站建设
  • 【开题答辩全过程】以 “物联网医院”-移动护理系统为例,包含答辩的问题和答案
  • 做网站的工作量怎么编辑网站内容
  • 基于STM32单片机的温湿度采集循迹避障APP小车
  • 单片机--概述
  • 文件与内容查找,压缩与解压
  • Emacs折腾日记(三十一)——org mode入门
  • 做网站推广的好处青岛市住房和城乡建设局官方网站
  • 科技网站域名北京顺义网站建设
  • 电子政务建设网站图片十大ppt模板免费下载网站
  • CentOS 7 安装并配置静态网络