![]() ![]() Step 5: Isolate techniques that are reused. The best technique we’ve seen – solve the problem again in 3 days. You’re recognizing different components, breaking them down and solving the problem. When you see a problem, you should immediately be able to break it down and re-create the solution. “I solve many questions but can’t solve them a week later! How do I remember solutions?” You made a list of questions and you started solving them. ( Check HackerEarth Data Structure & Algorithm practice ) Step 4: Spaced RepetitionĪlright. Or, you can master them all at the beginning. You can master each data structure when you start each section. How to go about it? Let’s say your core problems are divided by data structure. Here is a list of data structures to master : Some data structures are pretty hard to implement – for example, deleting a node from a Binary Search Tree is not trivial to code. ![]() Now, this doesn’t mean you need to know every implementation’s code. If you haven’t implemented either of those before, you’ll have trouble getting started. Let’s say you’re asked to Implement a Queue using just Stacks (a popular question). You need to know what data structures back a list, and how that works. But that’s not what happens under the hood. In this case, the candidate had been using Python, and there’s no concept of list capacity. Now let’s say you reach its capacity, what happens when you try to add another element?”Ĭandidate: *blank* “What do you mean capacity? I can keep adding elements to this list.” Interviewer: “So you initialized an array-backed list. To utilize them fully, you need to know how they work. Many problems modify data structures or re-engineer them for a specific use case. Interviewers can ask you about data structure internals. Many people ignore this, but it’s extremely important. Learn how to use each data structure in your language.Īlso, learn how to implement them. Now that you have finalized your list, start with the basics. If you want a structured course for this, check out InterviewCamp.io Step 3: Master each data structure. Many sites give you 100 curated problems.Ĭollectively, they give you a good variety of hand-picked problems. Step 2: Start the Depth-First Approach-make a list of core questions No need to actually code and debug it because you’re already good at that. Figure out a solution, and if it’s similar to one of your core problems (which it often is), you’re done. And best of all, you won’t need to code many of them. You can now go all out and solve as many problems as you want. So you’ve covered Depth, congratulations! You have acquired a solid base. You also start getting better at the coding part. To achieve this, you need to focus on a few representative problems (around 100 works well.) Solve them a few times and you’ll start seeing patterns. ![]() You know the data structure you are using and can implement it if asked to.You can apply the same code to a new problem quickly.You can write clean code in one go, because it’s second nature to you.You can code it with correct syntax, which means you are good at the language.When you analyze a problem in depth, it means: ![]() This is comforting, right? Who wants to focus on 500 problems when you can focus on 100?īut here’s the key-you want to learn them in depth. Here’s a counter-intuitive approach that works better: Focus on less problems, not more You only develop these skills with focused preparation. Interviews require deep problem-solving knowledge and the ability to code fast and accurately. The Breadth-Only approach has a problem-you don’t build a strong foundation. They are solely focused on solving as many problems as they can. It’s what we call the “Breadth-Only” approach. But when it comes to interviews, they fail miserably. They love to wear it as a badge of honor. We all have that friend who has solved 500 coding problems. Here is a step-by-step plan to improve your data structure and algorithm skills: Step 1: Understand Depth vs. Machine Learning or Blockchain might be the next big thing, but interview problem-solving is the skill of the decade. This blog is a guest contribution from Harsh Goel, InterviewCamp.io – Online Bootcamp for Technical Interviews ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |