Sale: Get 60% Off on all Pro Plans. Buy Now

Coding Interview Problems by Pattern

298 coding interview problems organized by algorithm pattern, with step-by-step solution guides and recall training.

66 Easy 201 Medium 31 Hard

Hash Maps

8 Easy·14 Medium

Two Pointers

11 Easy·9 Medium·1 Hard

Sliding Window

1 Easy·18 Medium·5 Hard
Maximum Average Subarray I Fixed-Size Window
Easy
Find All Anagrams in a String Fixed-Size Frequency Matching
Medium
Frequency of the Most Frequent Element Variable Size with Sum Tracking
Medium
Fruit Into Baskets Variable Size with Frequency Map
Medium
Get Equal Substrings Within Budget Variable Size Window with Sum Constraint
Medium
Grumpy Bookstore Owner Fixed-Size Window Sum Optimization
Medium
Longest Continuous Subarray With Absolute Diff Less Than or Equal to Limit Monotonic Queue Optimization
Medium
Longest Repeating Character Replacement Variable Size with Frequency Tracking
Medium
Longest Subarray of 1's After Deleting One Element Variable Size with Constraint
Medium
Longest Substring with At Most K Distinct Characters Variable Size with Frequency Map
Medium
Longest Substring Without Repeating Characters Dynamic Window Adjustment
Medium
Max Consecutive Ones III Variable Size with Constraint
Medium
Maximize the Confusion of an Exam Variable Size with Constraint
Medium
Maximum Erasure Value Dynamic Window with Set for Uniqueness
Medium
Maximum Number of Vowels in a Substring of Given Length Fixed-Size Window
Medium
Maximum Sum of Distinct Subarrays With Length K Fixed-Size with Distinctness Constraint
Medium
Minimum Size Subarray Sum Variable Size Window
Medium
Permutation in String Fixed-Size Frequency Matching
Medium
Subarray Product Less Than K Variable Size with Multiplicative Constraint
Medium
Minimum Window Substring Variable Size with Frequency Counting
Hard
Shortest Subarray with Sum at Least K Prefix Sums + Monotonic Deque
Hard
Sliding Window Maximum Monotonic Queue
Hard
Subarrays with K Different Integers Counting Subarrays with Constraints
Hard
Substring with Concatenation of All Words Fixed-Size Chunk Partitioning
Hard

Stacks

1 Easy·1 Medium

Modified Binary Search

5 Easy·8 Medium·1 Hard

In-place Reversal of a Linked List

2 Easy·4 Medium·1 Hard

DFS

11 Easy·28 Medium·1 Hard
Balanced Binary Tree Post-Order Traversal with State Aggregation
Easy
Diameter of Binary Tree Post-Order Traversal with State Propagation
Easy
Find if Path Exists in Graph Graph Connectivity
Easy
Flood Fill Grid Connected Component Traversal
Easy
Invert Binary Tree Recursive Tree Traversal
Easy
Maximum Depth of Binary Tree Post-Order Traversal for Tree Depth
Easy
Minimum Absolute Difference in BST Inorder Traversal on BST
Easy
Path Sum in Binary Tree Recursive State Exploration on Trees
Easy
Range Sum of BST Pruned Search on BST
Easy
Same Tree Recursive Tree Traversal
Easy
Subtree of Another Tree Recursive Tree Traversal and Comparison
Easy
Accounts Merge Graph Connected Components
Medium
All Paths From Source to Target Stateful Exploration with Backtracking
Medium
Binary Search Tree Iterator Controlled Inorder Traversal with Stack
Medium
Binary Tree Longest Consecutive Sequence II Post-Order Traversal with State Propagation
Medium
Clone Graph Graph Cloning with Memoization
Medium
Construct Binary Tree from Preorder and Inorder Traversal Recursive Tree Construction
Medium
Count Good Nodes in Binary Tree Stateful Exploration
Medium
Course Schedule Cycle Detection in Directed Graph
Medium
Course Schedule II Cycle Detection and Topological Sort
Medium
Evaluate Division Graph Traversal with Accumulated State
Medium
Find Leaves of Binary Tree Post-Order Traversal with State Aggregation
Medium
Flatten Binary Tree to Linked List Preorder Traversal with Postprocessing
Medium
Graph Valid Tree Cycle Detection and Connectivity Check
Medium
House Robber III Stateful Exploration with Dual State Tracking
Medium
Keys and Rooms Graph Reachability
Medium
Kth Smallest Element in a BST Inorder Traversal with Early Termination
Medium
Max Area of Island Connected Components in Grid
Medium
Minimum Number of Edge Reversals to Reach City Zero Graph Traversal with Edge Direction Tracking
Medium
Minimum Score of a Path Between Two Cities Graph Connectivity and State Propagation
Medium
Number of Islands Connected Components in Grid
Medium
Number of Provinces Connected Components in Graph
Medium
Pacific Atlantic Water Flow Reverse Reachability in Grid
Medium
Path Sum III Prefix Sum with Backtracking
Medium
Serialize and Deserialize Binary Tree Preorder Traversal with State Preservation
Medium
Sum Root to Leaf Numbers Stateful Exploration
Medium
Surrounded Regions Boundary-Connected Region Marking
Medium
Validate Binary Search Tree Boundary-Constrained Validation
Medium
Word Search Stateful Exploration with Backtracking
Medium
Binary Tree Maximum Path Sum Post-Order Traversal with State Propagation
Hard

BFS

14 Medium·4 Hard

Heap / Priority Queue

1 Easy·14 Medium·3 Hard

Backtracking

11 Medium·1 Hard

Trie

4 Medium·1 Hard

Union Find

2 Medium

Merge Intervals

3 Medium

Prefix Sum

1 Easy·5 Medium

Greedy Algorithms

5 Easy·15 Medium·2 Hard

Dynamic Programming

4 Easy·23 Medium·6 Hard
Climbing Stairs Top-Down Memoization
Easy
Counting Bits Bit Manipulation
Easy
Maximum Subarray Kadane's Algorithm
Easy
Min Cost Climbing Stairs Top-Down Memoization
Easy
Best Time to Buy and Sell Stock with Cooldown State Machine with Cooldown
Medium
Best Time to Buy and Sell Stock with Transaction Fee State Machine
Medium
Cheapest Flights Within K Stops Bellman-Ford Relaxation with Edge Constraints
Medium
Coin Change Top-Down Memoization
Medium
Coin Change 2 Top-Down Memoization for Combinatorial Counting
Medium
Decode Ways Top-Down Memoization
Medium
Delete and Earn House Robber Variant
Medium
Distinct Subsequences Top-Down Memoization for Counting Subsequences
Medium
House Robber Top-Down Memoization
Medium
House Robber II Linear Subproblem Decomposition
Medium
Interleaving String Top-Down Memoization for Sequence Interleaving
Medium
Length of Longest Fibonacci Subsequence Pair-State Tracking
Medium
Longest Common Subsequence Top-Down Memoization
Medium
Longest Increasing Subsequence Top-Down Memoization
Medium
Longest Palindromic Subsequence Top-Down Memoized Recursion
Medium
Maximum Product Subarray Tracking Dual States
Medium
Maximum Sum Circular Subarray Kadane's Algorithm with Circular Array Adaptation
Medium
Minimum Cost For Tickets Interval Coverage
Medium
Partition Equal Subset Sum Top-Down Memoized Subset Sum
Medium
Target Sum Top-Down Memoization
Medium
Unique Paths Top-Down Memoization
Medium
Unique Paths II Grid Path Counting with Obstacles
Medium
Word Break Top-Down Memoization
Medium
Best Time to Buy and Sell Stock IV State Machine
Hard
Burst Balloons Interval DP
Hard
Dungeon Game Grid Backward State Propagation
Hard
Edit Distance Top-Down Memoization for Sequence Alignment
Hard
Longest Increasing Path in a Matrix Top-Down Memoization with DFS
Hard
Regular Expression Matching Top-Down Memoization for Pattern Matching
Hard

Graph Properties

1 Easy

Matrix Traversal

3 Medium

Topological Sort

2 Medium·1 Hard

Dijkstra's Algorithm

1 Medium

K-way Merge

1 Hard

Fast & Slow Pointers

3 Easy·2 Medium

Cyclic Sort

1 Medium

Monotonic Stack

3 Easy·9 Medium·3 Hard

Bit Manipulation

2 Easy·1 Medium

Bitwise XOR

1 Easy

Math & Geometry

5 Easy·1 Medium

Simulation

1 Easy·7 Medium

System Design & Composition

1 Medium

Practice with active recall

Reading solutions is not enough. AlgoDrill blanks out key lines and makes you reconstruct them from memory.

Start drilling for free