Free · self-paced · C++
Data Structures & Algorithms in C++
Learn the structures and algorithms every programmer relies on by watching them run step by step, reading real C++, and practising until you can write them yourself.
7 phases38 topicsno sign-up
Your progress
0 of 0 topics done
Phase 1· complete
Foundations
What a data structure is, the C++ you need (pointers, references, recursion), and how to measure an algorithm with Big-O.
0 / 9 donePhase 2· complete
Linear Structures
Arrays, singly and doubly linked lists, stacks and queues: storing items in a line.
0 / 9 done- Arrays & 2-D Arrays (Review)
- Singly Linked List
- Doubly Linked List
- Stacks with an Array
- Stacks with a Linked List
- Queues with an Array
- Queues with a Linked List
- Circular Queue
- std::stack, std::queue & std::deque
Phase 3· complete
Searching & Sorting
Linear and binary search, then every classic sort from bubble to quick sort.
0 / 9 done- Linear Search
- Binary Search
- Selection Sort
- Bubble Sort
- Insertion Sort
- Pointer Sort
- Shell Sort
- Merge Sort
- Quick Sort
Phase 4· complete
Trees
Binary trees, binary search trees, traversals, balanced trees and heaps.
0 / 6 donePhase 5· complete
Hashing
Hash functions and collision handling for near-instant lookup.
0 / 1 done- Phase project: build it yourself
Phase 6· complete
Graphs
Vertices and edges, adjacency matrix and list, BFS, DFS and shortest paths.
0 / 4 done Phase 7· complete
Algorithm Design
The big strategies: divide and conquer, greedy choices and dynamic programming.
coming soon
Optional problem patterns: two pointers, sliding window, monotonic stack.
A random timed quiz across the phases you pick.
Don't just watch: implement it yourself, then solve 2–3 problems.