Skip to content
ArrayMediumLeetCode #238

Product of Array Except Self

Computes left and right prefix products in O(n) without using division.

Time O(n) Space O(1)
Open in 3D Studio

Live loop — open the studio to scrub, add your own array, or race it in Battle Arena.

Asked in interviews at

AmazonAppleMetaNetflix

Reference implementation (Python)

def product_except_self(arr):
    n = len(arr)
    res = [1] * n
    left = 1
    for i in range(n):
        res[i] = left
        left *= arr[i]
    right = 1
    for i in range(n - 1, -1, -1):
        res[i] *= right
        right *= arr[i]
    return res

Embed this visualization

Drop a live, looping Product of Array Except Self canvas into a blog post or course page.

<iframe src="/embed/product-except-self" width="100%" height="380" style="border:1px solid #e6e8ec;border-radius:14px" loading="lazy" title="3D algorithm visualization by CodeWithMunnaX"></iframe>

Frequently asked

What is the time and space complexity of Product of Array Except Self?

Product of Array Except Self runs in O(n) time and O(1) auxiliary space.

Is the Product of Array Except Self visualizer free?

The core 3D visualizer, Web Audio chimes and step intuition are free. A one-time ₹49 Pro Pass unlocks advanced algorithms, large custom arrays, Battle Arena and reel export.

Which companies ask Product of Array Except Self in interviews?

Product of Array Except Self shows up in interviews at Amazon, Apple, Meta, Netflix.

How does the 3D visualization of Product of Array Except Self work?

Each array value becomes a 3D pillar whose height maps to its value. Comparisons glow amber, swaps flash red, and settled elements lock green while a floating pointer badge tracks the active index — synchronized line-by-line with the Python code.

More Array