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

238. 除自身以外数组的乘积

题目:
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。

题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。

请 不要使用除法,且在 O(n) 时间复杂度内完成此题。

解题思路:
这道题的思路在题目中就给出来了,任意元素的全部前缀元素和后缀元素的乘积,也就是说answer[i]就等于nums[i]的前缀乘积 * 后缀乘积。
所以只需要计算出前缀乘积数组preProduct和后缀乘积数组sufProduct,answer[i] = preProduct[i] * sufProduct[i].

class Solution {public int[] productExceptSelf(int[] nums) {int n = nums.length;int[] ans = new int[n];int[] preProduct = new int[n]; // 前缀乘积int[] sufProduct = new int[n]; // 后缀乘积int product = 1;for(int i = 0; i < n; i++){preProduct[i] = product;product *= nums[i];}product = 1;for(int i = n - 1; i >= 0; i--){sufProduct[i] = product;product *= nums[i];}for(int i = 0; i < n; i++){ans[i] = preProduct[i] * sufProduct[i];}return ans;}
}

相关文章:

  • Android 实体键盘 设置默认布局
  • LX-YST-1
  • BeckHoff_FB --> F_SEQ_X3_TrigJob 函数
  • 快速掌握Django框架设计思想(图解版)
  • 用数学融智学人力资源模型的核心架构:建立可量化的理论框架
  • Snipaste:一款简单强大的跨平台截图工具
  • 高并发场景下接口安全实现方案:全方位构建防护体系
  • Linux环境下安装和使用RAPIDS平台的cudf和cuml - pip 安装方法
  • HarmonyOS应用开发——线性布局
  • MongoDB详细安装步骤(Windows 系统)
  • 安卓开发常用框架与库详解
  • 在职申硕|中南财院校专业直选
  • Java性能问题排查
  • 上传视频报错 413 Request Entity Too Large
  • 【动手学深度学习】3.5. 图像分类数据集
  • Python 高级主题与性能优化指南
  • 体系结构论文(八十六):The Dark Side ofComputing: SilentData Corruptions
  • C++ —— STL容器 —— string的模拟实现
  • 北京大学:AI+Agent与Agentic+AI的原理与应用(适合科研从业者和技术爱好者阅读)
  • 功能测试—软件的生命周期
  • ps素材库/北京百度seo公司
  • 编程培训就业班/太原网站seo
  • 网站表格怎么做的/青岛网站建设推广公司
  • 网站安全建设的重要性/seo专员工资待遇
  • 手机网站自动跳转代码/销售技巧和话术
  • 网站名字怎样做版权/百度快速排名平台