Data Structures & Algorithms
A structured, interview-focused path through every core DSA topic — from arrays and hashing to dynamic programming and advanced graphs. Each track teaches the pattern first, then the algorithm, then a clean Java 17 implementation, with dry runs and interview guidance.
17
Topics
10
Available now
266+
Curated problems
158h
Est. study time
Learning roadmap
A recommended path from foundations to optimisation. Each phase builds on the last.
- 1
Foundations
EasyBuild fluency with the data structures every other pattern relies on: arrays, hashing, and pointer techniques.
Arrays & HashingLiveHashMap & HashSetTwo PointersSliding WindowLive - 2
Searching & Sorting
MediumHalve the search space and use ordering as a pre-processing step that unlocks greedy and two-pointer solutions.
Binary SearchSortingIntervalsLiveGreedy AlgorithmsLive - 3
Linear Structures
MediumModel order and recency with linked lists, stacks, and queues — including the monotonic-stack and deque patterns.
Linked ListLiveStackQueue & DequeHeap / Priority QueueLive - 4
Trees & Tries
MediumRecurse over hierarchical data — binary trees, BST invariants, and prefix trees for fast word lookup.
Trees & BSTLiveTrie - 5
Search & Graphs
HardExplore state spaces exhaustively with backtracking, then model relationships and paths with graph algorithms.
BacktrackingLiveGraph AlgorithmsLive - 6
Optimization
HardThe capstone: recognise overlapping subproblems and optimal substructure to solve with dynamic programming.
Dynamic ProgrammingLive
Arrays & Hashing
MediumThe bedrock: scanning, prefix sums, and hashing for O(1) lookups.
Two Pointers
EasyConverging and fast/slow pointers to turn O(n²) scans into O(n).
Binary Search
MediumHalving the search space — on arrays and on the answer itself.
Sorting
MediumComparison sorts, counting sorts, and sorting as a pre-processing step.
HashMap & HashSet
EasyTrade space for time: constant-time membership and grouping.
Linked List
MediumPointer surgery: reversal, cycle detection, and merging.
Stack
MediumLIFO thinking: monotonic stacks and expression parsing.
Queue & Deque
MediumFIFO and sliding windows with a double-ended queue.
Trees & BST
MediumTraversals, recursion, and binary-search-tree invariants.
Trie
MediumPrefix trees for fast word lookup and autocomplete.
Heap / Priority Queue
MediumAlways-available min/max: top-k, merging, and scheduling.
Intervals
MediumSort, merge, and sweep overlapping ranges.
Sliding Window
MediumExpand and contract a window for subarray/substring problems.
Backtracking
HardSystematic search: build, recurse, undo.
Greedy Algorithms
MediumLocally optimal choices that prove globally optimal.
Dynamic Programming
HardIdentify DP patterns under interview pressure — state, transition, and space optimization.
Graph Algorithms
HardIntuition-first graph mastery — traversal, union-find, shortest paths, and advanced graphs.