Roadmap
Complete DSA Roadmap (Beginner to Advanced)
The fastest path through DSA is: arrays and strings first, then hashing and two pointers, then stacks/queues/linked lists, then trees, then graphs, then dynamic programming last — because DP problems routinely reuse graph and tree traversal as a subroutine. Most candidates underinvest in graphs and DP relative to how often they appear in real OAs; both deserve more time than arrays despite arrays feeling more familiar.
The order, and why
This isn't an arbitrary list — it's ordered by dependency. Two pointers and sliding window build directly on array fundamentals. Tree problems are graph problems with a constraint (no cycles, one parent), so trees before graphs makes the jump smaller. Dynamic programming is placed last on purpose: a large fraction of DP problems are really "graph shortest path" or "tree traversal" problems wearing a different name, and DP is far harder to learn before you've internalized those two.
- Arrays & Strings — foundation: traversal, in-place manipulation, prefix sums
- Two Pointers & Sliding Window — the first real technique layer on top of arrays
- Hashing — frequency counting, lookup-based optimization
- Stacks, Queues & Linked Lists — pointer manipulation and ordered structures
- Trees — traversal, recursion, and the setup for graphs
- Graphs — BFS/DFS, shortest path, topological sort — the single most OA-tested topic after DP
- Dynamic Programming — last, because it reuses everything above
- Greedy & Intervals — pattern recognition once the above are solid
What's actually in Ediky's bank
Ediky's DSA problem bank has 70 code-judged problems with a full in-browser IDE (10+ languages), plus 134 DSA-Technical MCQ/trace questions for the theory side that most practice platforms skip entirely — tracing recursive calls, predicting output, spotting the bug, without writing code.
By topic, Dynamic Programming (16 problems) and Graph (11) are the two heaviest-weighted categories in the coding bank, followed by Array (11) — which lines up with what Amazon's and Google's OA presets actually test (see the company guides below). If you only have time to go deep on two topics before an OA, DP and Graph are the highest-leverage choices.
For volume practice once the fundamentals are solid, Ediky's competitive programming sheet has 600 curated problems across structured tests with topic-wise editorials.
How to pace it
A reasonable pace for someone studying alongside a job or classes: one topic every 4-6 days, spending the first half on untimed problems (correctness first) and the back half doing 2-3 timed reps to build speed. Revisit each topic briefly a week later — Ediky's Revision feature tracks what you've solved and resurfaces weak areas automatically instead of you having to remember to go back.
Start with the DSA problem bank
70 coding problems with a full in-browser IDE, plus 134 MCQ theory questions, ordered by the topics above.
Open the DSA problem bank