Typescript-Algorithms
    Preparing search index...

    Variable product_of_array_except_selfConst

    product_of_array_except_self: (nums: number[]) => number[] = productExceptSelf

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

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

    题目要求时间复杂度为 O(n),且不能使用除法。


    输入: nums = [1,2,3,4]
    输出: [24,12,8,6]


    输入: nums = [-1,1,0,-3,3]
    输出: [0,0,9,0,0]


    • 2 <= nums.length <= 10^5
    • -30 <= nums[i] <= 30
    • 保证数组中任意元素的乘积都在 32 位整数范围内

    Type declaration

      • (nums: number[]): number[]
      • Parameters

        • nums: number[]

        Returns number[]

    除自己以外找其他位置的加减乘除,想错位操作。每个位置正常累乘,但是我们想它其实是前一个位置的累乘,或者是后一个位置的累乘。这么一错位,我们就可以得到两个数组,一个数组是前一个位置的累乘,一个数组是后一个位置的累乘。然后我们把这两个数组对应位置相乘,就可以得到除自己以外其他位置的累乘。