Skip to content

Latest commit

 

History

History
42 lines (26 loc) · 2.43 KB

week-07.md

File metadata and controls

42 lines (26 loc) · 2.43 KB

WEEK 7: System Design Interviews and Algos

Week ZERO Video

Now that you’ve been practicing more straightforward problems for a couple of weeks, it’s time to get real and start practicing harder questions that are more likely to be asked during coding interviews.

For practice and automated challenges along with interactive solutions, look at Grokking the Coding Interview: Patterns for Coding Questions

Here are some guidelines to keep in mind as you solve these problems:

  1. Now is the time to start timing yourself. Ideally, you shouldn’t spend more than 20–30 minutes solving any given problem. (This probably won’t be possible for all questions right away.)

  2. Don’t be discouraged if you are not able to solve a problem within the allocated time. Solve it even if takes you a couple of hours, without looking at the solution. This will help you build the confidence that you can solve it and then you can focus on solving them faster later.

  3. Start thinking about the Runtime and Memory complexity of each solution. You will have to articulate the complexities in the actual interview clearly, so it’s better to start now.

Here are some sample problems to consider:

  • Implement Binary Search
  • Find the Intersection point of two linked lists
  • Reverse words in a sentence
  • Check if two binary trees are identical
  • Clone (deep copy) a directed graph
  • Find solutions to a Boggle game
  • Determine if there are any three integers in an array that sum equal to the given value.

You will have to spend 2–3 weeks here. Don’t worry if you hit roadblocks and get stuck often — you will get the hang of it after a while. Trust me, questions that look impossible in the first few days start to seem easy after you’ve had practice.

Learning Objectives

  1. Begin to have a sense of the exepctations and structure of the system design interview
  2. Pactice algorithm live coding

Lesson plan

  1. https://www.youtube.com/watch?v=KYExYE_9nIY Design Reddit's homepage - sytem design interview example
  2. https://leetcode.com/problems/remove-linked-list-elements/ - very edge casey problem (30 minutes)
  3. https://www.hackerrank.com/interview/interview-preparation-kit - Hacker Rank Interview Prep Kit

Homework

  1. Practice