Warning: work in progress.
Hi, my name is John Kurlak. Thanks for checking out my book! Hopefully reading this book will be as rewarding to you as writing it has been for me.
I'm a software engineer at Facebook who is passionate about algorithms and problem solving. I have written this book to teach you what I've learned as I've studied algorithms over the past few years. I hope to continue adding to the book as I learn more!
Software engineers looking to prepare for interviews usually read one of the following books:
- Cracking the Coding Interview
- Elements of Programming Interviews
- Programming Interviews Exposed
Each of these books:
- Discuss the details of the interview process
- Teach the concepts that show up in interviews
- Provide practice interview problems and solutions
...and they do a great job at it!
However, these books tend to fall short when it comes to explaining the process of arriving at a solution. Instead of explaining motivations for various choices, they just provide answers and explanations for those answers. This kind of style is not particularly helpful for the interviewee.
This book exists to fill that gap.
After reading this book, the reader will gain:
- The algorithmic foundation necessary to solve a variety of interview problems.
- The intuition to know when to use what algorithmic tools and techniques.
Next: [Chapter 1: Understanding the problem](Chapter 1/README.md)