1-Month DSA Revision Plan
This document provides a structured 1-month revision plan for Data Structures and
Algorithms (DSA). The topics and questions are based on previous discussions and focus
areas, tailored to fit within a daily 1-hour study schedule. Each day includes specific topics,
questions, and brief explanations.
Week 1
Day 1
Topic: Arrays and Strings
Questions:
- Longest Substring Without Repeating Characters
- Set Matrix Zeroes
- Maximum Subarray Sum
Day 2
Topic: Binary Search
Questions:
- Find the Square Root
- Search in Rotated Sorted Array
- Median of Two Sorted Arrays
Day 3
Topic: Two Pointers
Questions:
- 3Sum
- Container With Most Water
- Trapping Rain Water
Day 4
Topic: Linked Lists
Questions:
- Reverse Linked List
- Merge Two Sorted Lists
- Remove Nth Node From End of List
Day 5
Topic: Stacks and Queues
Questions:
- Valid Parentheses
- Next Greater Element
- LRU Cache
Day 6
Topic: Hashing
Questions:
- Two Sum
- Group Anagrams
- Longest Consecutive Sequence
Day 7
Topic: Recursion and Backtracking
Questions:
- Subsets
- Combination Sum
- Sudoku Solver
Week 2
Day 8
Topic: Trees
Questions:
- Binary Tree Inorder Traversal
- Lowest Common Ancestor of a BST
- Serialize and Deserialize Binary Tree
Day 9
Topic: Binary Search Trees
Questions:
- Validate Binary Search Tree
- Insert into a BST
- Delete Node in a BST
Day 10
Topic: Heap
Questions:
- Kth Largest Element in an Array
- Merge k Sorted Lists
- Top K Frequent Elements
Day 11
Topic: Graphs
Questions:
- Number of Islands
- Course Schedule
- Clone Graph
Day 12
Topic: Dynamic Programming - Basics
Questions:
- Fibonacci Number
- Climbing Stairs
- Coin Change
Day 13
Topic: Dynamic Programming - Intermediate
Questions:
- Longest Palindromic Substring
- Longest Increasing Subsequence
- Edit Distance
Day 14
Topic: Dynamic Programming - Advanced
Questions:
- Word Break
- Maximum Product Subarray
- Burst Balloons
Week 3
Day 15
Topic: Bit Manipulation
Questions:
- Single Number
- Subset XOR
- Missing Number
Day 16
Topic: Sliding Window
Questions:
- Longest Substring with K Distinct Characters
- Minimum Window Substring
- Sliding Window Maximum
Day 17
Topic: Greedy Algorithms
Questions:
- Activity Selection
- Fractional Knapsack
- Huffman Encoding
Day 18
Topic: Divide and Conquer
Questions:
- Merge Sort
- Quick Sort
- Median of Two Sorted Arrays
Day 19
Topic: Graph Algorithms
Questions:
- Dijkstra's Algorithm
- Kruskal's Algorithm
- Prim's Algorithm
Day 20
Topic: Trie
Questions:
- Implement Trie
- Word Search II
- Maximum XOR of Two Numbers in an Array
Day 21
Topic: Math and Number Theory
Questions:
- GCD and LCM
- Sieve of Eratosthenes
- Modular Exponentiation
Week 4
Day 22
Topic: Revision - Arrays and Strings
Questions:
- Review Questions from Day 1
- Practice Additional Problems
Day 23
Topic: Revision - Trees and Graphs
Questions:
- Review Questions from Day 8 and Day 11
- Practice Additional Problems
Day 24
Topic: Revision - Dynamic Programming
Questions:
- Review Questions from Day 12 and Day 13
- Practice Additional Problems
Day 25
Topic: Mock Interview 1
Questions:
- Solve Random Questions under Timed Conditions
Day 26
Topic: Revision - Advanced Topics
Questions:
- Review Questions from Day 20 and Day 21
- Practice Additional Problems
Day 27
Topic: Mock Interview 2
Questions:
- Solve Random Questions under Timed Conditions
Day 28
Topic: Final Review
Questions:
- Focus on Weak Areas
- Revisit Core Concepts and Solutions