Skip to content
ArrayMedium

Maximum Difference in Array

Finds maximum arr[j] - arr[i] such that j > i by tracking minimum so far.

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

UberMicrosoftDoorDash

Reference implementation (Python)

def max_difference(arr):
    min_val = arr[0]
    max_diff = arr[1] - arr[0]
    for i in range(1, len(arr)):
        max_diff = max(max_diff, arr[i] - min_val)
        min_val = min(min_val, arr[i])
    return max_diff

Embed this visualization

Drop a live, looping Maximum Difference in Array canvas into a blog post or course page.

<iframe src="/embed/max-difference" 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 Maximum Difference in Array?

Maximum Difference in Array runs in O(n) time and O(1) auxiliary space.

Is the Maximum Difference in Array 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 Maximum Difference in Array in interviews?

Maximum Difference in Array shows up in interviews at Uber, Microsoft, DoorDash.

How does the 3D visualization of Maximum Difference in Array 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