Vismo · Create · Explore · Topics · Guides · Pricing

Two Pointers Removing Sorted Duplicates

An array walkthrough showing a slow pointer i and fast pointer j scanning a sorted list to remove duplicates in place. The animation highlights how j compares neighboring values while i marks where the next valid element should be written, illustrating the core two-pointer compaction pattern used in array deduplication problems. Useful for students studying in-place array algorithms and common coding-interview techniques like the 'remove duplicates' family of problems.

16:9 · Preview before teaching · automatic layout checks do not establish subject accuracy

The prompt that made it

class Solution { public int removeDuplicates(int[] nums) { int i=0; for(int j=0;j<nums.length;j++){ if(nums[j] == nums[i] && nums[j]==nums[j+1]){ continue; }else{ nums[i]=nums[j-1]; i++; }if(j==nums.length-1){ nums[i]=nums[j]; } } return i; } }

Make your own version

Make the next one in this series

Related animations

How A Perceptron Makes A Decision
How A Perceptron Makes A Decision

This animation visualizes a single perceptron processing weighted inputs, summing them with a bias, and passin…

From logic gates to arithmetic: the half adder
From logic gates to arithmetic: the half adder

This animation shows how a half adder circuit uses an XOR gate to compute the sum bit and an AND gate to compu…

Minimum spanning tree with Kruskal's algorithm
Minimum spanning tree with Kruskal's algorithm

A weighted graph is processed by sorting all edges from cheapest to most expensive, adding each one only if it…

Fibonacci: the recursion tree repeats work; memoisation removes it
Fibonacci: the recursion tree repeats work; memoisation removes it

This animation draws the full recursion tree for fib(5), showing all 15 calls and highlighting the repeated su…

Recursion on the call stack: 5! unwinds
Recursion on the call stack: 5! unwinds

This animation visualizes fact(5) as it pushes five stacked frames, one for each recursive call, until reachin…

Binary search tree: smaller left, larger right
Binary search tree: smaller left, larger right

Values 50, 30, 70, 20, 40, 60, 80, and 35 are inserted one at a time into a binary search tree, with each comp…