🗓️ 7-Day DSA Revision Plan (2–3 hours/day)
Goal: Refresh key topics, practice basic to medium problems, and build confidence for coding
rounds/interviews.
🔸 Day 1: Arrays & Strings
Topics:
● Array manipulation
● Prefix sum
● Two pointers
● Sliding window
● String reversal, palindrome, anagram
Practice (LeetCode/Easy to Medium):
● Two Sum
● Best Time to Buy and Sell Stock
● Longest Substring Without Repeating Characters
🔸 Day 2: Hashing & Sets
Topics:
● HashMap, HashSet
● Frequency counting
● Hashing patterns in strings
Practice:
● Valid Anagram
● Group Anagrams
● Top K Frequent Elements
🔸 Day 3: Recursion & Backtracking
Topics:
● Recursion tree
● Base & recursive cases
● Backtracking basics
Practice:
● Subsets
● Permutations
● Combination Sum
🔸 Day 4: Linked Lists + Stacks & Queues
Topics:
● Singly & doubly linked lists
● Stack/queue operations
● Reversing linked list
● Cycle detection (Floyd’s algo)
Practice:
● Reverse Linked List
● Linked List Cycle
● Valid Parentheses
● Implement Queue using Stacks
🔸 Day 5: Trees & Traversals
Topics:
● Binary Tree vs BST
● Preorder/Inorder/Postorder
● BFS (Level-order), DFS
● Insertion, Search
Practice:
● Maximum Depth of Binary Tree
● Invert Binary Tree
● Diameter of Binary Tree
🔸 Day 6: Sorting, Searching & Binary Search
Topics:
● Bubble, Merge, Quick (just theory)
● Binary search (basic + variations)
● Lower/Upper bound
Practice:
● Binary Search
● Search Insert Position
● Find Minimum in Rotated Sorted Array
🔸 Day 7: Graph Basics + Dynamic Programming Intro
Topics:
● Graph representation (adjacency list/matrix)
● DFS, BFS
● Basic DP (Fibonacci, Climbing Stairs)
Practice:
● Climbing Stairs (DP)
● Number of Islands (Graph BFS/DFS)
● Fibonacci Number
🧠 Helpful Resources
● 📘 DSA Visual Guide: Visualgo.net
● 🎥 YouTube:
○ Take U Forward DSA Playlist
○ NeetCode Roadmap
● 📄 Notes: Striver's DSA Sheet (PDF)