首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

自身以外数组的乘积(LeetCode 238)

1.问题描述 给你一个整数数组 nums,返回数组 answer ,其中 answer[i] 等于 nums 中 nums[i] 之外其余各元素的乘积 。...题目数据保证数组 nums 之中任意元素的全部前缀元素和后缀的乘积都在 32 位整数范围内。 请不要使用除法,且在 O(n) 时间复杂度内完成此题。...nums = [-1,1,0,-3,3] 输出: [0,0,9,0,0] 提示: 2 <= nums.length <= 105 -30 <= nums[i] <= 30 保证数组 nums 之中任意元素的全部前缀元素和后缀的乘积都在...可以先计算给定数组所有元素的乘积,然后对数组中的每个元素 x,将乘积除以 x 求得自身值以外的数组乘积。 然后这样的解决方法有一个问题,就是如果输入数组中出现 0,那么这个方法就失效了。...自身以外数组的乘积 - LeetCode

12010
您找到你想要的搜索结果了吗?
是的
没有找到

LeetCode-238-自身以外数组的乘积

# LeetCode-238-自身以外数组的乘积 题目来自于力扣https://leetcode-cn.com/problems/product-of-array-except-self 给你一个长度为...n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中 nums[i] 之外其余各元素的乘积。...示例: 输入: [1,2,3,4] 输出: [24,12,8,6] 提示:题目数据保证数组之中任意元素的全部前缀元素和后缀(甚至是整个数组)的乘积都在 32 位整数范围内。...*方法1、乘积结果=当前数左边的乘积(前缀)当前数右边的乘积(后缀) 由于结果的值为当前值之外的乘积,所以可以利用2个数组来记录当前值左侧的乘积和当前值右侧的乘积,两个乘积结果再进行一次对应位置相乘即为排除当前位置数的所有元素乘积

33910

自身以外数组的乘积

一、题目 给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中 nums[i] 之外其余各元素的乘积 。...题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在  32 位 整数范围内。 请不要使用除法,且在 O(n) 时间复杂度内完成此题。...= [-1,1,0,-3,3] 【输出】 [0,0,9,0,0] 提示: 2 <= nums.length <= 10^5 -30 <= nums[i] <= 30 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在...  32 位 整数范围内 三、解题思路 根据题目要求,我们需要计算出数组nums中,每个元素自己之外的乘积值,即假设nums包含4个元素,分别为nums[0]~`nums[3]`,那么最终结果如下所示

23620
领券