Left / Right Heads
Two pointers start at opposite ends - left at the front, right at the back - and move towards each other, stopping when they meet. Each step either advances one pointer past an element to skip, or acts on the pair (compare, swap) and moves both inward.
Classic
125. Valid Palindrome
Reverse a Subarray
344. Reverse String
Easy·
Left / Right Heads
O(N)O(1)
FIG. 344 REVERSE STRING● INTERACTIVE
visualization loads as you reach it
541. Reverse String II
Easy·
Left / Right Heads
O(N)O(N)
FIG. 541 REVERSE STRING II● INTERACTIVE
visualization loads as you reach it
2000. Reverse Prefix of Word
Easy·
Left / Right Heads
O(N)O(N)
FIG. 2000 REVERSE PREFIX OF WORD● INTERACTIVE
visualization loads as you reach it
151. Reverse Words in a String
Medium·
Left / Right Heads
O(7N)O(2N)
FIG. 151 REVERSE WORDS IN A STRING● INTERACTIVE
visualization loads as you reach it
186. Reverse Words in a String II
Medium·
Left / Right Heads
O(2N)O(1)
FIG. 186 REVERSE WORDS IN A STRING II● INTERACTIVE
visualization loads as you reach it
557. Reverse Words in a String III
Easy·
Left / Right Heads
O(4N)O(N)
FIG. 557 REVERSE WORDS IN A STRING III● INTERACTIVE
visualization loads as you reach it
Reverse Individual Elements
345. Reverse Vowels of a String
Easy·
Left / Right Heads
O(N)O(N)
FIG. 345 REVERSE VOWELS OF A STRING● INTERACTIVE
visualization loads as you reach it
917. Reverse Only Letters
Easy·
Left / Right Heads
O(N)O(N)
FIG. 917 REVERSE ONLY LETTERS● INTERACTIVE
visualization loads as you reach it
Reverse & Invert (2D)
832. Flipping an Image
Easy·
2 Approaches
New Matrix
O(N^2)O(1)
Left / Right Heads
O(N^2)O(1)
FIG. 832 FLIPPING AN IMAGE NEW MATRIX● INTERACTIVE
visualization loads as you reach it
Rotate - Using Reverse
189. Rotate Array
Medium·
189Rotate Array
Triple Reverse
O(N)O(1)
FIG. 189 ROTATE ARRAY● INTERACTIVE
visualization loads as you reach it
Quick Left Rotation
Basic·
Triple Reverse
O(N)O(1)
FIG. QUICK LEFT ROTATION● INTERACTIVE
visualization loads as you reach it
Sorted Array
167. Two Sum II - Input Array Is Sorted
Medium·
3 Approaches · 3 patterns
Converging Pointers
O(N)O(1)
Lookup Before Insert↗ Hash & Set
O(N)O(N)
Complement by Bisect↗ Binary Search
O(N log N)O(1)
FIG. 167 TWO SUM II INPUT ARRAY IS SORTED● INTERACTIVE
visualization loads as you reach it
Sort the Array
977. Squares of a Sorted Array
Easy·
Converging Pointers
O(N²)O(1)
FIG. 977 SQUARES OF A SORTED ARRAY● INTERACTIVE
visualization loads as you reach it
905. Sort Array By Parity
Easy·
Converging Pointers
O(N)O(1)
FIG. 905 SORT ARRAY BY PARITY● INTERACTIVE
visualization loads as you reach it