Skip to content
dsa/roadmap
Guide

How to use this guide

Don't just watch: implement it yourself, then solve 2–3 problems.

The loop for every topic

  1. Mental model. Read the plain-English idea and the analogy first. If you can't explain it to a friend, the code won't stick.
  2. Visualize. Step through slowly with →. Predict the next frame before you press.
  3. Code. Read the C++, then close the page and type it yourself. Compile with g++ -std=c++17.
  4. Watch one video, only if something is still unclear. One is enough.
  5. Exam lens and quick check. These are what get marked.
  6. Practice. Trace by hand 🟢, implement 🟡, solve 2–3 problems 🔴.
  7. Tick the "I can…" boxes honestly. That marks the topic done.

The plan

Phase 1: FoundationsWeeks 1–4

Ch01 Intro to DS (Week 1) · Ch02 Analysis (Weeks 2–3) · Ch03 Simple Sorts (Weeks 3–4) · then the phase lab.

Phase 2: Linear & HierarchicalWeeks 5–10

Ch04 Linked Lists (Weeks 5–6) · Ch05 Stacks & Queues (Weeks 7–8) · Ch06 Trees (Weeks 9–10) · then the phase lab.

Phase 3: Graphs, Fast Sorts & Exam PrepWeeks 11–16

Ch07 Graphs (Weeks 11–12) · Ch08 Advanced Sorts (Weeks 13–15) · then the phase lab.

Behind? Stretch the plan instead of skipping. Week 16 is for Exam mode and the cheat sheets.

Which channel for what

Don't follow every channel. Pick one per need:

Alternates: Jenny's Lectures CS/IT (Step-by-step basics, close to a classroom lecture) · take U forward (Striver A2Z) (Level Up patterns and interview prep).

Full-course backups: Data Structures in C/C++ (freeCodeCamp/mycodeschool) · Data Structures Easy→Advanced (freeCodeCamp/William Fiset).

References

The class slides (in Python) are linked as "Original slides" on each chapter page, with credit to their authors. All code on this site is rewritten in C++.

Your data

No account, no server. Progress, quiz scores, notes and bookmarks are saved in your browser's localStorage. Use Progress → Export to back up or move devices. If your browser blocks storage, the site still works, but forgets when you close the tab.

Keyboard shortcuts

⌘K /
Search topics, glossary, cheat sheets
space
Play / pause the visualizer
← →
Step back / forward
r
Reset the visualizer
?
Show this help