# 90 Days Preparation Schedule

**Month 1: Foundations and Basics**

Week 1-2: Data Structures and Algorithms (Basics)

Week 3-4: Algorithms (Intermediate)

**Month 2: Intermediate Topics and System Design**

Week 5-6: Data Structures and Algorithms (Intermediate)

Week 7-8: Advanced System Design and Final Preparation

**Month 3: Advanced Topics and Mock Interviews**

Week 9-10: Comprehensive Review and Mock Interviews

<table><thead><tr><th width="105">Day</th><th width="204">Focus Area</th><th>Problems</th></tr></thead><tbody><tr><td>Day 1</td><td>Arrays</td><td>Two Sum, Reverse String, Maximum Subarray, Merge Intervals</td></tr><tr><td>Day 2</td><td>Arrays</td><td>Contains Duplicate, Best Time to Buy and Sell Stock, Product of Array Except Self, Search in Rotated Sorted Array</td></tr><tr><td>Day 3</td><td>Strings</td><td>Valid Anagram, Longest Substring Without Repeating Characters, Longest Palindromic Substring, Group Anagrams</td></tr><tr><td>Day 4</td><td>Linked Lists</td><td>Reverse Linked List, Merge Two Sorted Lists, Linked List Cycle, Remove Nth Node From End of List</td></tr><tr><td>Day 5</td><td>Linked Lists</td><td>Add Two Numbers, Swap Nodes in Pairs, Copy List with Random Pointer, LRU Cache</td></tr><tr><td>Day 6</td><td>Stacks &#x26; Queues</td><td>Valid Parentheses, Min Stack, Evaluate Reverse Polish Notation, Implement Queue using Stacks</td></tr><tr><td>Day 7</td><td>Stacks &#x26; Queues</td><td>Daily Temperatures, Sliding Window Maximum, Basic Calculator, Decode String</td></tr><tr><td>Day 8</td><td>Hash Tables</td><td>Two Sum with HashMap, Group Anagrams, Top K Frequent Elements, Longest Consecutive Sequence</td></tr><tr><td>Day 9</td><td>Hash Tables</td><td>Valid Sudoku, Word Pattern, Isomorphic Strings, Minimum Window Substring</td></tr><tr><td>Day 10</td><td>Hash Tables</td><td>Happy Number, Contiguous Array, Subarray Sum Equals K, Maximum Size Subarray Sum Equals K</td></tr><tr><td>Day 11</td><td>Sorting &#x26; Searching</td><td>Merge Sort, Quick Sort, Binary Search, Search a 2D Matrix</td></tr><tr><td>Day 12</td><td>Sorting &#x26; Searching</td><td>Find Peak Element, First Bad Version, Median of Two Sorted Arrays, Find Minimum in Rotated Sorted Array</td></tr><tr><td>Day 13</td><td>Recursion &#x26; Backtracking</td><td>Subsets, Permutations, Combination Sum, Palindrome Partitioning</td></tr><tr><td>Day 14</td><td>Recursion &#x26; Backtracking</td><td>Word Search, N-Queens, Generate Parentheses, Letter Combinations of a Phone Number</td></tr><tr><td>Day 15</td><td>Dynamic Programming (Intro)</td><td>Climbing Stairs, House Robber, Maximum Subarray, Longest Common Subsequence</td></tr><tr><td>Day 16</td><td>Dynamic Programming (Intro)</td><td>Coin Change, Longest Increasing Subsequence, Word Break, Partition Equal Subset Sum</td></tr><tr><td>Day 17</td><td>Graphs &#x26; Trees (Basics)</td><td>Binary Tree Inorder Traversal, Symmetric Tree, Maximum Depth of Binary Tree, Path Sum</td></tr><tr><td>Day 18</td><td>Graphs &#x26; Trees (Basics)</td><td>Validate Binary Search Tree, Lowest Common Ancestor of a Binary Search Tree, Serialize and Deserialize Binary Tree, Invert Binary Tree</td></tr><tr><td>Day 19</td><td>Graphs &#x26; Trees (Basics)</td><td>Number of Islands, Clone Graph, Course Schedule, Pacific Atlantic Water Flow</td></tr><tr><td>Day 20</td><td>Review</td><td>Review all topics from Weeks 1-2, reattempt difficult problems, summary notes</td></tr><tr><td>Day 21</td><td>Review</td><td>Review all topics from Weeks 1-2, reattempt difficult problems, summary notes</td></tr><tr><td>Day 22</td><td>Advanced Linked Lists &#x26; Trees</td><td>Flatten a Multilevel Doubly Linked List, Binary Tree Zigzag Level Order Traversal, Construct Binary Tree from Preorder and Inorder Traversal, Kth Smallest Element in a BST</td></tr><tr><td>Day 23</td><td>Advanced Linked Lists &#x26; Trees</td><td>Populating Next Right Pointers in Each Node, Lowest Common Ancestor of a Binary Tree, Binary Tree Maximum Path Sum, Binary Tree Right Side View</td></tr><tr><td>Day 24</td><td>Heaps &#x26; Priority Queues</td><td>Kth Largest Element in an Array, Merge k Sorted Lists, Find Median from Data Stream, Top K Frequent Words</td></tr><tr><td>Day 25</td><td>Heaps &#x26; Priority Queues</td><td>Sliding Window Median, Trapping Rain Water II, Employee Free Time, Task Scheduler</td></tr><tr><td>Day 26</td><td>Advanced Graph Algorithms</td><td>Course Schedule II, Network Delay Time, Alien Dictionary, Word Ladder II</td></tr><tr><td>Day 27</td><td>Advanced Graph Algorithms</td><td>Minimum Cost to Reach Destination in Time, Find Eventual Safe States, Redundant Connection II, Reconstruct Itinerary</td></tr><tr><td>Day 28</td><td>System Design Basics</td><td>Read System Design Primer on GitHub, watch introductory system design videos</td></tr><tr><td>Day 29</td><td>System Design Basics</td><td>Design URL Shortener, Design Twitter, justify design decisions, focus on scalability</td></tr><tr><td>Day 30</td><td>System Design Basics</td><td>High-level components, databases, APIs, load balancing</td></tr><tr><td>Day 31</td><td>System Design Basics</td><td>Design systems considering storage requirements, indexing, partitioning</td></tr><tr><td>Day 32</td><td>Distributed Systems</td><td>Understand microservices, distributed caching, consensus algorithms, read up on CAP theorem</td></tr><tr><td>Day 33</td><td>Distributed Systems</td><td>Design YouTube, Design Uber, focus on distributed data management, fault tolerance</td></tr><tr><td>Day 34</td><td>Distributed Systems</td><td>Practice designing distributed systems with high availability, low latency</td></tr><tr><td>Day 35</td><td>Behavioral Questions</td><td>Learn STAR method, prepare responses for common behavioral questions</td></tr><tr><td>Day 36</td><td>Behavioral Questions</td><td>Reflect on leadership and teamwork examples, write and refine STAR stories</td></tr><tr><td>Day 37</td><td>Behavioral Questions</td><td>Problem-solving and conflict resolution examples, articulate responses clearly</td></tr><tr><td>Day 38</td><td>Review</td><td>Review all topics from Weeks 3-4, reattempt difficult problems, summary notes</td></tr><tr><td>Day 39</td><td>Review</td><td>Review all topics from Weeks 3-4, reattempt difficult problems, summary notes</td></tr><tr><td>Day 40</td><td>Advanced Dynamic Programming</td><td>Longest Increasing Subsequence, Edit Distance, Interleaving String, Wildcard Matching</td></tr><tr><td>Day 41</td><td>Advanced Dynamic Programming</td><td>Decode Ways, Longest Palindromic Subsequence, Burst Balloons, Russian Doll Envelopes</td></tr><tr><td>Day 42</td><td>Advanced Graph Algorithms</td><td>Minimum Spanning Tree, All-Pairs Shortest Path, Bellman-Ford, Floyd-Warshall</td></tr><tr><td>Day 43</td><td>Advanced Graph Algorithms</td><td>Path with Maximum Probability, Network Delay Time, Word Ladder II, Redundant Connection II</td></tr><tr><td>Day 44</td><td>Miscellaneous Topics</td><td>Bit manipulation problems, combinatorics, interval problems</td></tr><tr><td>Day 45</td><td>Miscellaneous Topics</td><td>Review graph and dynamic programming problems, solve any missed or skipped problems</td></tr><tr><td>Day 46</td><td>System Design Complex</td><td>Design Facebook, Design Instagram, focus on database scaling, sharding</td></tr><tr><td>Day 47</td><td>System Design Complex</td><td>Design a Cache System, Design a Rate Limiter, focus on memory management, concurrency</td></tr><tr><td>Day 48</td><td>System Design Complex</td><td>Design an E-commerce Platform, Design Google Drive, focus on file storage, replication</td></tr><tr><td>Day 49</td><td>Mock System Design Interviews</td><td>Conduct mock interviews with peers, review feedback</td></tr><tr><td>Day 50</td><td>Mock System Design Interviews</td><td>Conduct mock interviews with peers, review feedback</td></tr><tr><td>Day 51</td><td>Coding Mock Interviews</td><td>Schedule coding mock interviews, review performance, iterate</td></tr><tr><td>Day 52</td><td>Coding Mock Interviews</td><td>Schedule coding mock interviews, review performance, iterate</td></tr><tr><td>Day 53</td><td>Coding Mock Interviews</td><td>Schedule coding mock interviews, review performance, iterate</td></tr><tr><td>Day 54</td><td>Review Core Concepts</td><td>Review data structures, algorithms, and system design, focus on weak areas</td></tr><tr><td>Day 55</td><td>Review Core Concepts</td><td>Review data structures, algorithms, and system design, focus on weak areas</td></tr><tr><td>Day 56</td><td>Review Core Concepts</td><td>Review data structures, algorithms, and system design, focus on weak areas</td></tr><tr><td>Day 57</td><td>Review Core Concepts</td><td>Review data structures, algorithms, and system design, focus on weak areas</td></tr><tr><td>Day 58</td><td>Advanced System Design</td><td>Design YouTube, Design Google Maps, focus on scalability, user load, real-time processing</td></tr><tr><td>Day 59</td><td>Advanced System Design</td><td>Design a Messaging System, Design a Search Engine, focus on indexing, query optimization</td></tr><tr><td>Day 60</td><td>Advanced System Design</td><td>Review all previously designed systems, address any gaps or weaknesses</td></tr><tr><td>Day 61</td><td>Advanced System Design</td><td>Deep dive into specific components like databases, caching mechanisms, load balancers</td></tr><tr><td>Day 62</td><td>Advanced System Design</td><td>Practice designing complex, large-scale systems, prepare detailed notes</td></tr><tr><td>Day 63</td><td>Mock System Design Interviews</td><td>Conduct final round of mock interviews, focus on presentation and articulation</td></tr><tr><td>Day 64</td><td>Mock System Design Interviews</td><td>Conduct final round of mock interviews, focus on presentation and articulation</td></tr><tr><td>Day 65</td><td>Behavioral Questions</td><td>Review and refine STAR stories, ensure readiness for behavioral questions</td></tr><tr><td>Day 66</td><td>Behavioral Questions</td><td>Reflect on past experiences, prepare additional examples for various scenarios</td></tr><tr><td>Day 67</td><td>Behavioral Questions</td><td>Conduct mock behavioral interviews with peers, iterate based on feedback</td></tr><tr><td>Day 68</td><td>Final Review</td><td>Review all core concepts, key problems, system designs, behavioral questions</td></tr><tr><td>Day 69</td><td>Final Review</td><td>Relax, light review, ensure all materials and notes are organized</td></tr><tr><td>Day 70</td><td>Final Review</td><td>Relax, light review, ensure all materials and notes are organized</td></tr><tr><td>Day 71</td><td>Final Review</td><td>Relax, light review, ensure all materials and notes are organized</td></tr><tr><td>Day 72</td><td>Coding Mock Interviews</td><td>Conduct coding mock interviews, review feedback, iterate</td></tr><tr><td>Day 73</td><td>Coding Mock Interviews</td><td>Conduct coding mock interviews, review feedback, iterate</td></tr><tr><td>Day 74</td><td>Coding Mock Interviews</td><td>Conduct coding mock interviews, review feedback, iterate</td></tr><tr><td>Day 75</td><td>Coding Mock Interviews</td><td>Conduct coding mock interviews, review feedback, iterate</td></tr><tr><td>Day 76</td><td>Mock System Design Interviews</td><td>Conduct system design mock interviews, review feedback, iterate</td></tr><tr><td>Day 77</td><td>Mock System Design Interviews</td><td>Conduct system design mock interviews, review feedback, iterate</td></tr><tr><td>Day 78</td><td>Mock System Design Interviews</td><td>Conduct system design mock interviews, review feedback, iterate</td></tr><tr><td>Day 79</td><td>Review Core Concepts</td><td>Revisit key topics, practice problems, focus on areas of improvement</td></tr><tr><td>Day 80</td><td>Review Core Concepts</td><td>Revisit key topics, practice problems, focus on areas of improvement</td></tr><tr><td>Day 81</td><td>Review Core Concepts</td><td>Revisit key topics, practice problems, focus on areas of improvement</td></tr><tr><td>Day 82</td><td>Review Core Concepts</td><td>Revisit key topics, practice problems, focus on areas of improvement</td></tr><tr><td>Day 83</td><td>Review Core Concepts</td><td>Revisit key topics, practice problems, focus on areas of improvement</td></tr><tr><td>Day 84</td><td>Review Core Concepts</td><td>Revisit key topics, practice problems, focus on areas of improvement</td></tr><tr><td>Day 85</td><td>Relaxation and Light Review</td><td>Light review sessions, rest and stress management</td></tr><tr><td>Day 86</td><td>Relaxation and Light Review</td><td>Light review sessions, rest and stress management</td></tr><tr><td>Day 87</td><td>Relaxation and Light Review</td><td>Light review sessions, rest and stress management</td></tr><tr><td>Day 88</td><td>Relaxation and Light Review</td><td>Light review sessions, rest and stress management</td></tr><tr><td>Day 89</td><td>Relaxation and Light Review</td><td>Light review sessions, rest and stress management</td></tr><tr><td>Day 90</td><td>Relaxation and Light Review</td><td>Light review sessions, rest and stress management</td></tr></tbody></table>
