Here is the interview question prompt, presented for reference.
If we are given an array of integers, can you return an output array such that each corresponding input's elements returns the product of the input array except itself?
This can be hard to explain, so let's take an array: [1, 2, 4, 16]
What we want to return is [128, 64, 32, 8]
. This is because 2 x 4 x 16 = 128
, 1 x 4 x 16 = 64
, 1 x 2 x 16 = 32
, and 1 x 2 x 4 = 8
. At each index, we ignore the number at that index and multiply the rest.
In other words, output[i]
is equal to the product of all the elements in the array other than input[i]
.
Can you solve this in O(n)
time without division?
100000
O(n)
O(n)
You can see the full challenge with visuals at this link.
Challenges • Asked almost 7 years ago by Jake from AlgoDaily
This is the main discussion thread generated for Product Except Self.