Skip to content

Dev2kod/DSA-StriverPlaylist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

36 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“˜ DSA Mastery Roadmap (5–6 Months)

A complete self-study plan to master Data Structures & Algorithms with daily, weekly, and monthly targets.


🧭 Overview

This repository documents my 5–6 month journey to learn Data Structures & Algorithms (DSA) from scratch to an interview-ready level.

🎯 Goals

  • Build strong fundamentals
  • Solve 300–500 DSA problems
  • Become proficient in problem-solving
  • Prepare for tech interviews (FAANG / MAANG / Product Companies)

πŸ§‘β€πŸ’» Language Choice: C++ or Java?

βœ” Recommended: C++

  • Fastest, more control over memory
  • STL makes coding efficient
  • Best for competitive programming
  • Most DSA resources use C++

Or Use: Java

  • Clean OOP structure
  • Rich in-built libraries
  • Great for interview prep
  • Safe memory management (GC)

Final Choice β†’ C++ for DSA

Both languages can still follow this roadmap.


πŸ—ΊοΈ 6-Month Learning Roadmap

Month Focus Area
1 Basics + Math + Arrays + Strings
2 Linked Lists + Stacks + Queues + Trees
3 Heaps + Hashing + Tries + Advanced DS
4 Sorting + Searching + Greedy + DP Basics
5 Advanced DP + Graph Algorithms
6 Revision + Mock Interviews + Company Questions

πŸ“… Detailed Weekly Plan


πŸ”° MONTH 1 β€” Foundations

Week 1 β€” Language Basics + Complexity

  • Syntax, loops, arrays, functions
  • Big-O notation
  • Time & space complexity
  • Array basics (max/min, reverse, duplicates)

Daily Targets

  • βœ” 45 min learning
  • βœ” 2 problems
  • βœ” 15 min revision

Week 2 β€” Math & Recursion

  • Bit manipulation
  • GCD, LCM, prime numbers
  • Recursion basics

Problems

  • 10 recursion
  • 5 math
  • 5 bit manipulation

Week 3 β€” Arrays Deep Dive

  • Two pointers
  • Sliding window
  • Binary search variations
  • Kadane’s algorithm

Problems

  • 20–25 array questions

Week 4 β€” Strings

  • Frequency counting
  • Anagrams
  • Palindromes
  • Hashing

Problems

  • 20 string problems

🌳 MONTH 2 β€” Core Data Structures

Week 5 β€” Linked Lists

Topics:

  • SLL, DLL
  • Reverse LL
  • Detect loop
  • Intersection point

Problems

  • βœ” 15 LL questions

Week 6 β€” Stacks & Queues

  • Implementation
  • Monotonic stack
  • Next greater element
  • Sliding window maximum

Problems

  • βœ” 15 questions

Week 7 β€” Trees (Binary Trees)

  • Pre/In/Post-order
  • Level-order
  • Height & diameter
  • Balanced tree

Problems

  • βœ” 15–20 tree problems

Week 8 β€” BST

  • Insert, delete, search
  • Validate BST
  • Kth smallest element
  • LCA

🧠 MONTH 3 β€” Advanced Data Structures

Week 9 β€” Heaps

  • Min heap
  • Max heap
  • Priority queue
  • Heap sort

Week 10 β€” HashMaps

  • Two sum
  • Subarrays with sum K
  • Frequency maps

Week 11 β€” Tries

  • Insert/search
  • Longest prefix
  • Word break (trie-based)

Week 12 β€” Segment Trees, Fenwick Tree, Disjoint Set

  • Range queries
  • BIT/Fenwick
  • Union-Find
  • Path compression

βš™οΈ MONTH 4 β€” Algorithms Mastery

Week 13 β€” Sorting

  • Merge sort
  • Quick sort
  • Counting sort
  • Applications of sorting

Week 14 β€” Searching + Greedy

  • Binary search on answer
  • Aggressive cows
  • Book allocation
  • Interval scheduling

Week 15–16 β€” Dynamic Programming Basics

  • Memoization & tabulation
  • 1D DP β†’ Fibonacci, Climbing stairs, House robber
  • 2D DP β†’ Grid problems

πŸ”— MONTH 5 β€” DP + Graphs

Week 17–18 β€” Advanced DP

  • LIS, LCS
  • Knapsack
  • DP on partitions
  • Matrix chain multiplication

Week 19–20 β€” Graph Algorithms

  • BFS, DFS
  • Topological sort
  • Dijkstra & Bellman-Ford
  • Floyd-Warshall
  • Bridges & articulation points
  • MST (Kruskal, Prim)

🏁 MONTH 6 β€” Interviews, Revision, Mock Tests

Week 21 β€” Revision

Revisit:

  • Arrays
  • Strings
  • Recursion
  • Trees

βœ” Solve 30 previously solved problems again.


Week 22 β€” Mock Interviews

Use:

  • Pramp
  • LeetCode Mock
  • Interviewing.io

Week 23 β€” Company-wise Problems

Targets:

  • Google β†’ 50
  • Amazon β†’ 100
  • Microsoft β†’ 60
  • Meta β†’ 50

Week 24 β€” Final Polishing

  • 20–25 hard problems
  • Resume preparation
  • Whiteboard practice
  • Time-based problem solving

🧩 Daily Study Template

Time Activity
45 min Learn a new concept
1 hr Solve 2–3 problems
15 min Revise old topics
Weekend Contest + mock test

πŸ”— Recommended Resources

πŸŽ₯ DSA Playlists

  • Love Babbar (C++) β€” Complete DSA
  • Kunal Kushwaha (Java + DSA)
  • Abdul Bari β€” Algorithms

πŸ§ͺ Practice Platforms

  • LeetCode (Primary)
  • GeeksForGeeks
  • CodeStudio
  • HackerRank

πŸ“š Books (Optional)

  • Cracking the Coding Interview
  • Introduction to Algorithms (CLRS)
  • Data Structures & Algorithms Made Easy β€” Karumanchi

βœ” Expected Outcome After 6 Months

You will:

  • Understand all major data structures
  • Solve 300–500 high-quality problems
  • Be interview-ready for product companies
  • Build strong algorithmic thinking
  • Perform well in LeetCode contests & mock interviews

πŸ“Œ Final Notes

Stay consistent, revise weekly, and track your progress.
Your future coding interviews will become significantly easier once this plan is complete.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages