Problem Solving Roadmap
A structured guide to learning Data Structures and Algorithms — tailored separately for beginner, intermediate, and advanced learners.

Where to Start

Jumping into tough problems without the basics is a common mistake. Whether you're new to DSA or getting back into it, start with the DKodeTree Roots 25. It’s a focused set that covers core concepts you’ll need for pretty much every coding interview. Mastering these early helps you build real confidence and makes advanced topics way easier to handle.

Too many people get overwhelmed by big problem lists because they skip the fundamentals. Roots 25 keeps things clear and manageable so you're not just solving problems—you’re actually understanding them.

Strong basics = better interviews. Simple as that.

For anyone struggling with questions like:
“Where do I start?”
“What should I do next?”

There are many great roadmaps out there that offer flexibility and a broad view of the landscape. But I wanted to create one that follows a clear, step-by-step sequence — so it’s easier for newcomers to start without feeling overwhelmed.

This roadmap is designed to remove the guesswork. It outlines the core problem-solving categories, organized by proficiency level, and its linear structure helps reduce decision fatigue and keep your learning focused.

The path is mapped — now it’s your turn to pair it with consistent effort. Consistent practice across all areas is the secret ingredient!

Basic

EasyMedium
Hashing
Prefix Computations
Stack
Queue
Two Pointers
Binary Search
Sliding Window
Sorting
Linked List
Trees
Binary Trees
Binary Search Trees
N-ary Trees
Heap / Priority Queue
Backtracking
Graphs
Graph Traversal
Shortest Paths in Graphs
Graph Structure & Connectivity
Dynamic Programming
1D Dynamic Programming
2D Dynamic Programming
Greedy
Intervals
Trie
Computational Patterns
Number Theory
Grids & Patterns
Bit Manipulation
Design

Intermediate

EasyMediumHard
Hashing
Prefix Computations
Stack
Queue
Two Pointers
Binary Search
Sliding Window
Sorting
Linked List
Trees
Binary Trees
Binary Search Trees
N-ary Trees
Heap / Priority Queue
Backtracking
Graphs
Graph Traversal
Shortest Paths in Graphs
Graph Structure & Connectivity
Dynamic Programming
1D Dynamic Programming
2D Dynamic Programming
Greedy
Intervals
Trie
Computational Patterns
Number Theory
Grids & Patterns
Bit Manipulation
Design

Advanced

MediumHard
Hashing
Prefix Computations
Stack
Queue
Two Pointers
Binary Search
Sliding Window
Sorting
Linked List
Trees
Binary Trees
Binary Search Trees
N-ary Trees
Heap / Priority Queue
Backtracking
Graphs
Graph Traversal
Shortest Paths in Graphs
Graph Structure & Connectivity
Dynamic Programming
1D Dynamic Programming
2D Dynamic Programming
Greedy
Intervals
Trie
Computational Patterns
Number Theory
Grids & Patterns
Bit Manipulation
Design

Keep Practicing!

They say it takes 21 days to build a habit. Let today be your Day One. Good luck!

Back to Practice Problems