Computer Science
Data Structures and Algorithms roadmap
Build a strong DSA foundation and master the problem-solving patterns used in technical interviews.
- Intermediate
- about 22 hours
- 12 modules
- 29 steps
Before you start
What you will learn
1. Arrays, Strings & Hashing
The everyday data structures: arrays, strings, hash tables and sets.
- Arrays — Data Structures · Arrays
- Strings — Data Structures · Strings
- Hash Tables & Sets — Data Structures · Hash Tables & Sets
2. Linked Lists, Stacks & Queues
Linear structures and when to reach for a linked list, a stack or a queue.
- Linked Lists — Data Structures · Linked Lists
- Stacks — Data Structures · Stacks
- Queues — Data Structures · Queues
3. Searching & Sorting
Sorting algorithms and binary search, and the trade-offs between them.
- Sorting — Algorithms · Sorting
- Searching & Binary Search — Algorithms · Searching & Binary Search
4. Trees & Heaps
Binary trees and heaps, the structures behind hierarchies and priority queues.
- Trees & Binary Trees — Data Structures · Trees & Binary Trees
- Heaps & Priority Queues — Data Structures · Heaps & Priority Queues
5. Graphs & Traversal
Model relationships as graphs and explore them with BFS and DFS.
- Graphs — Data Structures · Graphs
- BFS & DFS — Algorithms · BFS & DFS
6. Two Pointers & Sliding Window
Two classic patterns that turn quadratic scans over arrays and strings into linear ones.
- Two Pointers — Algorithms · Two Pointers
- Sliding Window — Algorithms · Sliding Window
7. Matrices & Prefix Sums
Work with grids and matrices and answer range queries fast with prefix sums.
- Matrices — Data Structures · Matrices
- Prefix Sum — Algorithms · Prefix Sum
8. Tree Traversal & Divide and Conquer
Recursive algorithms that split a problem into smaller ones: tree traversals and divide and conquer.
- Tree Traversal — Algorithms · Tree Traversal
- Divide and Conquer — Algorithms · Divide and Conquer
9. Greedy & Intervals
Greedy choices and the interval problems, like merging and scheduling, where they shine.
- Greedy — Algorithms · Greedy
- Intervals — Algorithms · Intervals
10. Search Trees, Tries & String Algorithms
Ordered lookups with binary search trees, prefix search with tries and classic string algorithms.
- Binary Search Trees — Data Structures · Binary Search Trees
- Tries — Data Structures · Tries
- String Algorithms — Algorithms · String Algorithms
11. Backtracking & Dynamic Programming
Search solution spaces with backtracking and avoid repeated work with dynamic programming.
- Recursion & Backtracking — Algorithms · Recursion & Backtracking
- Dynamic Programming — Algorithms · Dynamic Programming
12. Advanced Graph Algorithms
Topological sort, shortest paths and union-find for dependency, routing and connectivity problems.
- Topological Sort — Algorithms · Topological Sort
- Shortest Paths — Algorithms · Shortest Paths
- Disjoint Set — Data Structures · Disjoint Set
- Union Find — Algorithms · Union Find
Each step unlocks when you answer its questions well enough, and a module you finish counts in every roadmap that shares it.
Start this roadmap for free