Grokking the Coding Interview: Patterns for Coding Questions
Vote

0% completed

Who Should Take This Course?

Who this course is for

What you need before starting

What you do not need

Where to go next

You may know this feeling. You have solved a few hundred practice problems. Then a new one appears, and you still do not know where to begin.

Random practice does that. Each solved problem gives you one answer, and interviews rarely repeat exact questions. This course teaches the technique underneath instead. Once you have it, a question you have never seen looks like one you have already solved.

Who this course is for

You are preparing for your first coding interview. The course opens with easy warmup problems, and the difficulty grows slowly. Every solution is explained step by step.

You work as an engineer, but you have not interviewed in years. Most day jobs rarely ask for algorithm work, so the skill weakens with time. This course rebuilds it in an organized way, one technique at a time.

You practice a lot but stopped improving. If every new problem still feels new, you are collecting answers, not techniques. Learning the pattern behind each answer fixes that.

Your interview is soon. You do not have time for a thousand problems, and you do not need it. One pattern, learned properly, covers dozens of problems at once.

What you need before starting

This course assumes three things.

  • Common data structures. Array, LinkedList, HashMap, Stack, Queue, Heap, and Graph. You should know what each one stores and what it is good at.
  • Big-O notation. You should be able to look at a loop and name its cost.
  • Recursion. You should be able to read a function that calls itself and say what it returns.

If you want to review these first:

What you do not need

  • Prior interview practice. Every problem starts at the statement and explains each step to the answer.
  • A computer science degree. The three items above are the whole requirement. Where you learned them does not matter.
  • A fixed choice of language. Every problem is solved in Java, Python, C++, JavaScript, C#, and Go. You can switch languages inside the code editor on any problem.

Where to go next

The next lesson explains what a coding pattern is and what this course contains. The one after it answers the practical questions: the right order, the right pace, and when to read a solution.

For feedback, comments, or suggestions, write to us at contact@designgurus.org.

Happy learning!
Arslan Ahmad

Leo Alferez

Leo Alferez

· a year ago

Hi,

I am confused on whether or not this is a design patterns course? I started doing some of the warm up problems and I really like the course. Either way even if it's not a design pattern I still thing It is worth trying.

Show 1 reply
yubaraj.100mgr

yubaraj.100mgr

· 3 years ago

Video explanation of each question solution would be very helpful, very hard to understand with just reading

D

Deepali Tolia

· 3 years ago

There are too many sources for these prerequisites making it difficult to select which one is good and compatible with how this course is designed as those courses also include the topics in this course and making the learning process confusing.

Show 1 reply
K

k

· 3 years ago

It will be helpful if you could suggest the course for basics. Any website/Course/Pdf will also work.

Prerequisites as mentioned in the course are:

"You need to have a basic understanding of common data-structures like Array, LinkedList, HashMap, Stack, Queue, Heap, and Graph. You should also be familiar with Recursion and Big-O."

Show 2 replies
C

Catz Tek

· 3 years ago

I think we should add a final test to cover all of the patterns with multiple problems and not show which pattern will be used in each problem.

Show 1 reply
C

CaptainKidd

· 4 years ago

One thing in general i'd like to try and clarify to set the tone for these lessons. What is the expectation on the problems before the challenge questions? Is the idea that we be able to solve all these questions based on the pattern introduced in the first problem?

Show 1 reply
D

d27saurabh

· 4 years ago

What are the timestamps below each section?

Show 4 replies

Reading Progress

0%

On This Page

Who this course is for

What you need before starting

What you do not need

Where to go next