Data Structures & Algorithms
Master coding interviews with **pattern-first** prep. Understand patterns, practice high-impact curated lists, and learn optimal solutions.
Explore Patterns
1D Dynamic Programming
22 problemsSolve linear optimization problems by breaking them into overlapping subproblems and caching states.
2D Dynamic Programming
16 problemsResolve grid navigation and sequence alignment optimizations using 2D state matrices.
Arrays & Hashing
32 problemsIdentify duplicates, find frequencies, and achieve constant-time lookups using hash tables.
Backtracking
20 problemsSolve search problems by exploring decision paths and discarding invalid branches.
Binary Search
15 problemsLocate elements in sorted arrays by repeatedly halving the search space range.
Bit Manipulation
10 problemsSolve integer logic and mask operations using low-level bitwise commands.
Graphs
33 problemsModel and traverse networks of nodes connected by symmetric or directed edges.
Greedy
21 problemsSolve optimization problems by making the locally optimal choice at each step.
Heap & Priority Queue
20 problemsRetrieve extreme values in constant time using binary heaps.
Intervals
7 problemsCoordinate overlapping time ranges by sorting boundary points.
Linked List
15 problemsTraverse linear collections of nodes connected by sequential pointer references.
Math & Geometry
16 problemsSolve coordinates, matrix transformations, and numerical algorithms using geometric equations.
Sliding Window
9 problemsTrack contiguous subarrays using a dynamic coordinate window that expands and shrinks.
Stack
17 problemsVerify matching parenthetical pairs and track elements using Last-In, First-Out arrays.
Trees
23 problemsTraverse hierarchical node networks representing binary, search, and n-ary structures.
Tries
4 problemsMatch character prefixes and store string dictionary keys in nested search trees.
Two Pointers
17 problemsScan sorted arrays using two coordinate pointers moving from opposite ends or at different speeds.