Nail That Coding Interview with This Study Plan!
When diving into the coding interview prep world, you're probably wondering, "What exactly should I focus on?" or "Where do I begin?". Fear not! Having been through the Software Engineer interview gauntlet several times, I've fine-tuned a 3-month blueprint just for you.
The sweet spot? 3 months, assuming you can dedicate 11 hours weekly. While I'll delve into a 3-month blueprint here, remember, you can always customize your plan with the Grind 75 tool I've crafted.
Before diving deep: If you're a bit rusty with the basics of data structures and algorithms, brush up on those first.
- Broad and Shallow: Skim through all topics first, then tackle a mix of questions. Perfect if you have a month up your sleeve.
- Deep Dive: Master each topic thoroughly before moving on. Ideal for those on a time crunch. You'll want to hit high-priority topics first.
- Deep First, Broad Later: Get a good grasp of each topic, practice a few questions, then shift to the next topic. Once all topics are covered, scatter your practice across all areas. Opt for this if you have over a month to spare.
For a balanced approach, I'd suggest either the first or the third strategy.
Get ahead with FAANG-quality resume templates that have paved the way for countless interviews at top-tier companies in the Bay Area. Check them out!
Map out your available days and hours. Aim for a realistic timeline to avoid overwhelming yourself.
The resources linked are my algorithm cheatsheets. They're designed to quickly bring you up to speed on crucial points like time complexity, nuances, and topic-centric tactics.
Remember: Early in your practice, incorporate coding interview best practices and techniques!
Week 1: Foundations
|Hash Table||High||3.5 hours|
Week 2: The Next Steps
|Sorting and searching||High||4 hours|
|Linked List||High||4 hours|
Week 3: Branching Out
Week 4: Advanced Topics
|Dynamic programming||Mid||3 hours|
These challenges will fine-tune your coding skills. If you've tackled some from the previous weeks, skip or retry them. And if you're not comfortable with dynamic programming, feel free to skip those problems. Most can be approached using recursion or backtracking.
Tip: Find these problems in Leet Code to practice and monitor your progress effectively!
Week 5: Getting Started
|Two Sum||Easy||20 mins|
|Longest Substring||Medium||25 mins|
|Add Two Numbers||Medium||35 mins|
|Median of Two Arrays||Hard||45 mins|
Week 6: Keep Pushing
|Merge Two Sorted Lists||Easy||20 mins|
|Swap Nodes in Pairs||Medium||35 mins|
|Divide Two Integers||Medium||35 mins|
|Longest Palindrome||Medium||40 mins|
|Search in Rotated Array||Hard||45 mins|
Week 7: Advanced Techniques
|Remove Duplicates||Easy||20 mins|
|Pow(x, n)||Medium||30 mins|
|Jump Game||Medium||35 mins|
|Merge Intervals||Medium||40 mins|
|Wildcard Matching||Hard||45 mins|
Week 8: Challenging Constructs
|Max Subarray||Easy||15 mins|
|Rotate Image||Medium||30 mins|
|Valid Sudoku||Medium||35 mins|
|Minimum Window Substring||Hard||50 mins|
Week 9: Solidifying Knowledge
|Reverse Linked List||Easy||15 mins|
|Duplicate Number||Medium||20 mins|
|Multiply Strings||Medium||25 mins|
|Combination Sum||Medium||30 mins|
|First Missing Positive||Hard||45 mins|
Week 10: Final Challenges
|Climbing Stairs||Easy||25 mins|
|Longest Valid Parentheses||Medium||30 mins|
|Rotate List||Medium||35 mins|
|Word Search||Medium||35 mins|
|Minimum Path Sum||Hard||40 mins|
Week 11: Prep for the Big Day
|Simplify Path||Medium||30 mins|
|Set Matrix Zeroes||Medium||30 mins|
|Gas Station||Medium||35 mins|
|Word Break||Medium||40 mins|
Week 12: Last Minute Brush-up
|Maximum Product Subarray||Medium||25 mins|
|Palindromic Substrings||Medium||30 mins|
|Validate Binary Search Tree||Medium||30 mins|
|Recover Binary Search Tree||Hard||45 mins|
Your Intro and Questions: Allocate approximately 3 hours to draft a captivating introduction and formulate engaging questions for the end of your interviews. I'ts important not to forget the behavioral parts of the interview as well, which is covered in the behavioral interview section.