# Weekly Schedule Template ## Week 1: Array Basics and Two Pointers **Focus**: Master fundamental array operations and two pointers pattern ### Monday (May 17, 2026) **Topic**: Array Basics Introduction **Problems to Solve**: 1. Linear search in array 2. Find maximum/minimum in array 3. Array frequency counting 4. Basic array transformations **Learning Resources**: - Review `docs/01-foundations/array-basics.md` - Practice with simple array problems **Daily Goal**: 4 problems, 100% success rate ### Tuesday (May 18, 2026) **Topic**: Two Pointers Fundamentals **Problems to Solve**: 1. `twoSum` - Easy ✅ 2. `maxArea` - Medium ✅ 3. Basic two pointer practice (2 problems) **Learning Resources**: - Study `docs/01-foundations/two-pointers.md` - Focus on opposite direction pointers **Daily Goal**: 4 problems, understand movement logic ### Wednesday (May 19, 2026) **Topic**: Array Transformations **Problems to Solve**: 1. `sortedSquares` - Medium ✅ 2. `intersection` - Easy ✅ 3. Array rotation problems (2 problems) **Learning Resources**: - Practice two pointers on transformed arrays - Study time complexity analysis **Daily Goal**: 4 problems, master transformation logic ### Thursday (May 20, 2026) **Topic**: Search Algorithms **Problems to Solve**: 1. `binarySearch` - Easy ✅ 2. `toGetClosestPoint` - Medium ✅ 3. Binary search variations (2 problems) **Learning Resources**: - Study `docs/01-foundations/binary-search.md` - Practice different search patterns **Daily Goal**: 4 problems, O(log n) complexity ### Friday (May 21, 2026) **Topic**: String Algorithms **Problems to Solve**: 1. `isPalindrome` - Easy ✅ 2. `isIsomorphic` - Medium ✅ 3. String matching problems (2 problems) **Learning Resources**: - Apply two pointers to strings - Study character frequency patterns **Daily Goal**: 4 problems, string pattern mastery ### Saturday (May 22, 2026) **Topic**: Advanced String Processing **Problems to Solve**: 1. `backspaceCompare` - Medium ✅ 2. `compress` - Medium ✅ 3. Mixed string problems (2 problems) **Learning Resources**: - Study stack-based string processing - Practice edge cases **Daily Goal**: 4 problems, 80%+ success rate ### Sunday (May 23, 2026) **Topic**: Week 1 Review **Activities**: - Review all solved problems - Update `docs/progress.md` - Complete daily practice log - Identify weak areas for week 2 **Weekly Goal**: 28 problems completed **Success Rate Target**: 85%+ --- ## Week 2: Two Pointers Mastery and Binary Search **Focus**: Deep dive into two pointers and binary search variations ### Monday (May 24, 2026) **Topic**: Two Pointers Advanced **Problems to Solve**: 1. Three sum problem 2. Remove duplicates from sorted array 3. Two pointers on unsorted arrays (2 problems) **Learning Resources**: - Advanced two pointers patterns - Sliding window introduction **Daily Goal**: 4 problems, understand optimization ### Tuesday (May 25, 2026) **Topic**: Container Problems **Problems to Solve**: 1. Trapping rain water 2. Container with most water variations 3. Subarray problems (2 problems) **Learning Resources**: - Study container optimization - Practice area calculations **Daily Goal**: 4 problems, master container logic ### Wednesday (May 26, 2026) **Topic**: Binary Search Variations **Problems to Solve**: 1. Search in rotated sorted array 2. Find minimum in rotated array 3. Binary search on answers (2 problems) **Learning Resources**: - Study `docs/01-foundations/binary-search.md` - Practice search space reduction **Daily Goal**: 4 problems, O(log n) mastery ### Thursday (May 27, 2026) **Topic**: Fast/Slow Pointers **Problems to Solve**: 1. Linked list cycle detection 2. Find duplicate number 3. Cycle detection variations (2 problems) **Learning Resources**: - Study Floyd's cycle detection - Practice pointer movement **Daily Goal**: 4 problems, cycle detection mastery ### Friday (May 28, 2026) **Topic**: Prefix Sum Introduction **Problems to Solve**: 1. Range sum queries 2. Prefix sum array construction 3. Subarray sum equals K (2 problems) **Learning Resources**: - Study `docs/01-foundations/prefix-sums.md` - Practice range queries **Daily Goal**: 4 problems, O(1) range queries ### Saturday (May 29, 2026) **Topic**: Combined Patterns **Problems to Solve**: 1. Binary search + two pointers 2. Prefix sum + sliding window 3. Mixed pattern problems (2 problems) **Learning Resources**: - Combine multiple patterns - Practice pattern recognition **Daily Goal**: 4 problems, pattern combination ### Sunday (May 30, 2026) **Topic**: Week 2 Review **Activities**: - Review week 2 concepts - Update progress tracking - Practice weak areas - Plan week 3 **Weekly Goal**: 28 problems completed **Success Rate Target**: 80%+ --- ## Week 3: String Patterns and Hash Tables **Focus**: Master string algorithms and hash table fundamentals ### Monday (May 31, 2026) **Topic**: String Fundamentals **Problems to Solve**: 1. Reverse string 2. Valid palindrome 3. String rotation problems (2 problems) **Learning Resources**: - String manipulation patterns - Two pointers for strings **Daily Goal**: 4 problems, string mastery ### Tuesday (June 1, 2026) **Topic**: String Matching **Problems to Solve**: 1. Longest substring without repeating chars 2. Minimum window substring 3. Pattern matching problems (2 problems) **Learning Resources**: - Sliding window for strings - Hash tables for character tracking **Daily Goal**: 4 problems, O(n) string algorithms ### Wednesday (June 2, 2026) **Topic**: Hash Table Basics **Problems to Solve**: 1. Two sum with hash map 2. Contains duplicate 3. Frequency counting problems (2 problems) **Learning Resources**: - Hash table fundamentals - Time complexity analysis **Daily Goal**: 4 problems, O(1) lookups ### Thursday (June 3, 2026) **Topic**: Hash Table Advanced **Problems to Solve**: 1. Group anagrams 2. Hash map + two pointers 3. Advanced hash problems (2 problems) **Learning Resources**: - Complex hash table patterns - Multiple data structures **Daily Goal**: 4 problems, hash optimization ### Friday (June 4, 2026) **Topic**: Data Structure Validation **Problems to Solve**: 1. `isValidSudoku` - Medium ✅ 2. `isDevided11` - Medium ✅ 3. Validation problems (2 problems) **Learning Resources**: - Constraint satisfaction - Grid validation patterns **Daily Goal**: 4 problems, validation mastery ### Saturday (June 5, 2026) **Topic**: Combined String and Hash **Problems to Solve**: 1. Longest substring with at most K distinct chars 2. String hash problems (2 problems) 3. Mixed pattern problems (2 problems) **Learning Resources**: - Combine string and hash patterns - Practice optimization **Daily Goal**: 4 problems, pattern combination ### Sunday (June 6, 2026) **Topic**: Week 3 Review **Activities**: - Review string and hash concepts - Update progress tracking - Practice interview-style problems - Plan week 4 **Weekly Goal**: 28 problems completed **Success Rate Target**: 80%+ --- ## Week 4: Dynamic Programming Introduction **Focus**: Introduction to dynamic programming concepts ### Monday (June 7, 2026) **Topic**: DP Fundamentals **Problems to Solve**: 1. Fibonacci sequence 2. Climbing stairs 3. Basic DP problems (2 problems) **Learning Resources**: - DP patterns: memoization vs tabulation - Time/space complexity analysis **Daily Goal**: 4 problems, DP introduction ### Tuesday (June 8, 2026) **Topic**: 1D Dynamic Programming **Problems to Solve**: 1. House robber 2. Maximum subarray 3. 1D DP problems (2 problems) **Learning Resources**: - State definition - Transition equations - Space optimization **Daily Goal**: 4 problems, 1D DP mastery ### Wednesday (June 9, 2026) **Topic**: DP Optimization **Problems to Solve**: 1. Coin change (unbounded knapsack) 2. Longest common subsequence 3. DP optimization problems (2 problems) **Learning Resources**: - Space optimization techniques - State compression **Daily Goal**: 4 problems, DP optimization ### Thursday (June 10, 2026) **Topic**: DP on Strings **Problems to Solve**: 1. Word break 2. Edit distance 3. String DP problems (2 problems) **Learning Resources**: - DP for string problems - 2D DP patterns **Daily Goal**: 4 problems, string DP mastery ### Friday (June 11, 2026) **Topic**: DP Review and Practice **Problems to Solve**: 1. DP review problems 2. Mixed DP problems 3. Interview-style DP (2 problems) **Learning Resources**: - DP pattern recognition - Optimization techniques **Daily Goal**: 4 problems, DP pattern mastery ### Saturday (June 12, 2026) **Topic**: Month 1 Review **Activities**: - Complete month 1 assessment - Review all concepts - Update progress tracking - Identify areas for improvement **Monthly Goal**: 112 problems completed **Success Rate Target**: 80%+ ### Sunday (June 13, 2026) **Topic**: Rest and Planning **Activities**: - Rest day - Plan month 2 goals - Review weak areas - Prepare for advanced topics --- ## Monthly Review Template ### Month 1 Summary **Total Problems**: 112 problems **Success Rate**: [Calculate percentage] **Patterns Mastered**: Array basics, two pointers, binary search, strings, hash tables, DP introduction **Time Spent**: [Hours] **Key Achievements**: - [List major accomplishments] - [Patterns mastered] - [Improvements noted] **Areas for Improvement**: - [Weak areas identified] - [Concepts needing more practice] - [Speed/accuracy targets] ### Month 2 Goals - **Focus**: Intermediate patterns and advanced topics - **Target**: 112 problems, 85%+ success rate - **Key Areas**: Graph algorithms, tree algorithms, advanced DP - **Practice**: More interview-style problems --- ## Daily Practice Template For each day, use this structure: ### Date (Week X, Day Y) **Today's Focus**: [Main topic/pattern] **Problems Solved**: 1. [Problem Name] - [Difficulty] ✅/❌ - Pattern: [Pattern name] - Time: [Complexity], Space: [Complexity] - Learning: [Key insights] 2. [Problem Name] - [Difficulty] ✅/❌ - Pattern: [Pattern name] - Time: [Complexity], Space: [Complexity] - Learning: [Key insights] **Key Insights**: - [Main takeaways from today] - [Surprising findings] - [Important connections] **Struggles**: - [Areas where you had difficulty] - [Concepts that were confusing] **Questions for Review**: - [Things to clarify later] - [Concepts needing more practice] **Tomorrow's Plan**: - [Next day's focus areas] - [Specific problems to practice] - [Review topics] --- ## Tips for Success ### 1. Consistency - Practice daily, even if only 1-2 problems - Don't skip days - Review regularly ### 2. Quality over Quantity - Focus on understanding, not just completion - Review solutions and learn new approaches - Document insights ### 3. Pattern Recognition - Identify patterns in problems - Group similar problems - Learn common approaches ### 4. Time Management - Set realistic daily goals - Track progress and adjust - Don't spend too much time on one problem ### 5. Review and Reflect - Weekly reviews help identify weak areas - Monthly reviews show overall progress - Adjust plan based on performance --- **Note**: This schedule is flexible. Adjust based on your progress, learning style, and available time. The key is consistent practice and continuous learning.