DEV Community

AryantKumar
AryantKumar

Posted on

10

DSA ROADMAP FOR BASIC TO INTERMEDIATE IN 6 MONTHS

DSA ROADMAP

Month

1: Foundation Building
1. Week 1-2:
• Topics: Arrays, Strings
• Practice: Basic problems on array manipulation, string operations, and pattern matching.
• Resources: “Cracking the Coding Interview”, LeetCode (Easy problems).
2. Week 3-4:
• Topics: Sorting and Searching (Bubble, Selection, Insertion, Merge, Quick Sort).
• Practice: Binary search and variations, sorting-based problems.
• Resources: GeeksforGeeks, HackerRank.

Month 2: Intermediate Topics
1. Week 1-2:
• Topics: Stacks and Queues
• Practice: Problems like balancing parentheses, next greater element, queue-based challenges.
• Resources: LeetCode, GeeksforGeeks tutorials.
2. Week 3-4:
• Topics: Linked Lists (Singly, Doubly, Circular)
• Practice: Reversing a linked list, detecting cycles, merging two sorted lists.
• Resources: “Introduction to Algorithms”, Coding Ninjas DSA course.

Month 3: Recursion and Backtracking
1. Week 1-2:
• Topics: Recursion Basics, Divide and Conquer
• Practice: Fibonacci, power calculation, merge sort using recursion.
2. Week 3-4:
• Topics: Backtracking
• Practice: N-Queens, Sudoku Solver, permutations, and subsets.
• Resources: LeetCode Explore - Backtracking, HackerEarth.

Month 4: Trees and Graphs
1. Week 1-2:
• Topics: Binary Trees, Binary Search Trees
• Practice: Tree traversals (Inorder, Preorder, Postorder), Lowest Common Ancestor, Diameter of a tree.
2. Week 3-4:
• Topics: Graphs (DFS, BFS, Connected Components)
• Practice: Shortest path algorithms (Dijkstra, Bellman-Ford), cycle detection.
• Resources: NeetCode Graph Playlist, GeeksforGeeks.

Month 5: Advanced Concepts
1. Week 1-2:
• Topics: Dynamic Programming (DP) Basics
• Practice: Fibonacci, knapsack problem, longest common subsequence.
2. Week 3-4:
• Topics: Advanced DP and Greedy Algorithms
• Practice: Coin change problem, minimum path sum, interval scheduling.
• Resources: DP Tutorials on Codeforces, AtCoder.

Month 6: Mock Interviews and Optimization
1. Week 1-2:
• Topics: Hashing, Heaps, Tries
• Practice: Implementing heaps, solving problems on priority queues and tries.
2. Week 3-4:
• Focus: Mock interviews, revising weak areas, and solving timed problems.
• Resources: Mock interviews on Pramp, InterviewBit.

Daily Schedule for DSA Practice
• 1-2 Hours Daily:
• 30 minutes: Learning/reading new concepts.
• 1 hour: Solving 2-3 problems.
• Weekend: Revise concepts and attempt mock contests on platforms like Codeforces or LeetCode.

Do your career a big favor. Join DEV. (The website you're on right now)

It takes one minute, it's free, and is worth it for your career.

Get started

Community matters

Top comments (1)

Collapse
 
meeki profile image
Meeki

Great post. For problem-solving, I would also recommend platforms like codeintuition.io and structy.net

Heroku

Simplify your DevOps and maximize your time.

Since 2007, Heroku has been the go-to platform for developers as it monitors uptime, performance, and infrastructure concerns, allowing you to focus on writing code.

Learn More

👋 Kindness is contagious

Discover a treasure trove of wisdom within this insightful piece, highly respected in the nurturing DEV Community enviroment. Developers, whether novice or expert, are encouraged to participate and add to our shared knowledge basin.

A simple "thank you" can illuminate someone's day. Express your appreciation in the comments section!

On DEV, sharing ideas smoothens our journey and strengthens our community ties. Learn something useful? Offering a quick thanks to the author is deeply appreciated.

Okay