

Buy anything from 5,000+ international stores. One checkout price. No surprise fees. Join 2M+ shoppers on Desertcart.
Desertcart purchases this item on your behalf and handles shipping, customs, and support to Brazil.
This is the Python version of our book. See the website for links to the C++ and Java version.Have you ever... Wanted to work at an exciting futuristic company ? Struggled with an interview problem thatcould have been solved in 15 minutes? Wished you could study real-world computing problems ? If so, you need to read Elements of Programming Interviews (EPI). EPI is your comprehensive guide to interviewing for software development roles. The core of EPI is a collection of over 250 problems with detailed solutions. The problems are representative of interview questions asked at leading software companies. The problems are illustrated with 200 figures, 300 tested programs, and 150 additional variants. The book begins with a summary of the nontechnical aspects of interviewing, such as strategies for a great interview, common mistakes, perspectives from the other side of the table, tips on negotiating the best offer, and a guide to the best ways to use EPI. We also provide a summary of data structures, algorithms, and problem solving patterns. Coding problems are presented through a series of chapters on basic and advanced data structures, searching, sorting, algorithm design principles, and concurrency. Each chapter stars with a brief introduction, a case study, top tips, and a review of the most important library methods. This is followed by a broad and thought-provoking set of problems. A practical, fun approach to computer science fundamentals, as seen through the lens of common programming interview questions. Jeff Atwood/Co-founder, Stack Overflow and Discourse Review: Best technical interview preparation books in Python! - After finishing my internship at Facebook as a data engineer last summer, I am looking for a book that can help me to prepare for technical interviews involving Python because I want to find a full-time position as a data engineer or data scientist. Starting last year, I started looking for books and websites from which I could study data structures and algorithms in Python. Unfortunately, the majority of solutions in popular interview preparation books and websites nowadays are written in C++ or Java, such as Cracking the Coding Interview, Leetcode, and GeeksforGeeks. At the beginning of this year, I finally discovered this book Elements of Programming Interviews in Python. It is best interview preparation book I have encountered so far, for the following reasons: 1. It is written in Python 3.6, which is easier to understand for people who don’t have a computer science (CS) background. 2. It provides tips, popular libraries, and boot camp questions for each data structure and algorithm concept, which can be useful and provide a quick study guide right before your interview. 3. It has an entire section on domain-specific programs (design problems, language questions, object-oriented design, and common tools) to boost your fundamental knowledge in CS. 4. It also has a table that simulates different preparation scenarios (a 3-day hackathon, a 1-week finals cram, a 1-month term project, and a 4-monts algorithms class), and it recommends a subset of problems from different topics for each scenario, so you can plan your preparation accordingly. 5. It provides a detailed analysis for each problem, starting from brute force, to analyzing space and time complexities, to the final optimal solution, so you can practice your thinking process and use it during the real interview. 6. It has an online judge that is similar to Leetcode but with solutions written in Python, so you can practice and refer to the solutions in real-time! To summarize, if you are like me and don’t have a background in CS, are short of time, and want to get a structured approach and practice your Python programing interview skills online, this is the book you should start with! Good luck! Review: Hands Down the best resource for Python Interviews - especially with EPI Judge - This is by far the best resource out there for someone who's interviewing in Python. There's a large variety of interesting questions, and the book includes challenging variants on many of those questions. These variants require even more creative algorithmic thinking. One of the biggest advantages of this book is that it's specifically geared towards Python. The Python solutions in this book are clean and well-thought out, and they habitualize good Python practices. It's much more effective than picking up an interview preparation book that's written in another programming language, and trying to port all the code over yourself. The authors also give some serious consideration to space complexity, and there are some really clever solutions in the book that aren't just time-efficient, but space-efficient as well. The second part of this book is the Honors Class section, which provides harder problems to solve once you're comfortable with the preceding material. It's roughly 60 pages of significantly harder questions/solutions that are meant to solidify your problem solving skills. I think the biggest strength of this book is the EPI Judge. It's a Git repository that you can clone, and gives you a playground to test out your own solutions to the problems listed in the book. It will then run your code against a correct solution across many test cases, and let you know if your code passes validation. I can't understate how useful that is. Especially for problems involving graphs and trees, setting up your own data structures and test cases can be an incredibly time-consuming process. If you go through this book and solve the problems with EPI Judge, you will be a much stronger interviewing candidate. UPDATE: Received 4 job offers from 6 on-sites, started at Google in October 2018.
| Best Sellers Rank | #119,636 in Books ( See Top 100 in Books ) #2 in Genetic Algorithms #37 in Computer Programming Languages #88 in Python Programming |
| Customer Reviews | 4.4 out of 5 stars 926 Reviews |
D**G
Best technical interview preparation books in Python!
After finishing my internship at Facebook as a data engineer last summer, I am looking for a book that can help me to prepare for technical interviews involving Python because I want to find a full-time position as a data engineer or data scientist. Starting last year, I started looking for books and websites from which I could study data structures and algorithms in Python. Unfortunately, the majority of solutions in popular interview preparation books and websites nowadays are written in C++ or Java, such as Cracking the Coding Interview, Leetcode, and GeeksforGeeks. At the beginning of this year, I finally discovered this book Elements of Programming Interviews in Python. It is best interview preparation book I have encountered so far, for the following reasons: 1. It is written in Python 3.6, which is easier to understand for people who don’t have a computer science (CS) background. 2. It provides tips, popular libraries, and boot camp questions for each data structure and algorithm concept, which can be useful and provide a quick study guide right before your interview. 3. It has an entire section on domain-specific programs (design problems, language questions, object-oriented design, and common tools) to boost your fundamental knowledge in CS. 4. It also has a table that simulates different preparation scenarios (a 3-day hackathon, a 1-week finals cram, a 1-month term project, and a 4-monts algorithms class), and it recommends a subset of problems from different topics for each scenario, so you can plan your preparation accordingly. 5. It provides a detailed analysis for each problem, starting from brute force, to analyzing space and time complexities, to the final optimal solution, so you can practice your thinking process and use it during the real interview. 6. It has an online judge that is similar to Leetcode but with solutions written in Python, so you can practice and refer to the solutions in real-time! To summarize, if you are like me and don’t have a background in CS, are short of time, and want to get a structured approach and practice your Python programing interview skills online, this is the book you should start with! Good luck!
B**N
Hands Down the best resource for Python Interviews - especially with EPI Judge
This is by far the best resource out there for someone who's interviewing in Python. There's a large variety of interesting questions, and the book includes challenging variants on many of those questions. These variants require even more creative algorithmic thinking. One of the biggest advantages of this book is that it's specifically geared towards Python. The Python solutions in this book are clean and well-thought out, and they habitualize good Python practices. It's much more effective than picking up an interview preparation book that's written in another programming language, and trying to port all the code over yourself. The authors also give some serious consideration to space complexity, and there are some really clever solutions in the book that aren't just time-efficient, but space-efficient as well. The second part of this book is the Honors Class section, which provides harder problems to solve once you're comfortable with the preceding material. It's roughly 60 pages of significantly harder questions/solutions that are meant to solidify your problem solving skills. I think the biggest strength of this book is the EPI Judge. It's a Git repository that you can clone, and gives you a playground to test out your own solutions to the problems listed in the book. It will then run your code against a correct solution across many test cases, and let you know if your code passes validation. I can't understate how useful that is. Especially for problems involving graphs and trees, setting up your own data structures and test cases can be an incredibly time-consuming process. If you go through this book and solve the problems with EPI Judge, you will be a much stronger interviewing candidate. UPDATE: Received 4 job offers from 6 on-sites, started at Google in October 2018.
P**R
Good problems and good explanation of solutions , not very understandable coding solutions
What I like in this book: - Nice introduction to Python libraries you need to know for each section. - Good set of problems What I dislike: - Coding solutions use a lot of Syntax Sugar and 'Pythonic' short syntax that makes it less understandable. I think as the goal here is to understand the code and algorithms and not necessarily write the most concise and shortest code, it is better to keep it more simple and understandable. - Print and paper quality is not great. What I like to see: a link to the leetcode problem or a similar environment that can write the solutions in code and evaluate it by running test cases.
B**L
Many problems and solutions, organized by theme. Explanations are clear and concise.
I found this book helpful in brushing up on my knowledge of data structures and algorithms. It also contains useful interview tips for both interviewers and interviewees. It even has some short discussions on variety of other programming-related topics (parallel programming, design patterns, etc.). The book is organized by topic, with each topic having a set of problems and solutions with clear explanations by the authors. How does it compare to Leetcode? Well, for one, you can carry this book with you to the beach, which is harder to do with Leetcode. Another thing is that the authors have great career track records. I found their explanations to be of a higher quality than most of the explanations in the "Discuss" section on Leetcode. That said, there is more content on Leetcode (for free) than there is in this book. But quality > quantity, and I think this book was certainly worth the price for me due to its quality and accessibility.
T**G
Horrible physical quality of the book
The content of the book is awesome. However, the physical quality of the book being delivered is horrible for a book lover like me I ordered this book (brand new version ) from MT Rainier Store as a Christmas present for my brother on 21 Dec 2017 and it arrived on 26 Dec 2017. Although it stated on the website as brand new, what I received seems to suggest otherwise. There were multiple fold mark on the front cover ( which shows that it has been probably been used before). Furthermore, the alignment of the pages in the book is of sub-par quality. Some pages were poking out and it looks like those pages are going to be detached in a matter of days. Also, when I check the book carefully, one of the pages got cut into half as well. Although it may seems like very small details but for a book lover and as a Christmas present , the physical quality of the book really upset me. Regarding the content of the book, it is still perfect as I expected tho. EDIT 1 : I have changed the review to 5 star since it is really unfair to give it 1 star solely based on the quality of the copy and not on the content of the book
R**L
Not recommended
If you don’t mind poor reading and mediocrity this won’t affect you. This book is hard to follow and there was no care or thought put in writing. It’s brute force.
W**U
An amazing book for coding interviews
An amazing book for coding interviews. I regard it as the single best book for coding interviews in the market. It is in particular suitable for people who have basic programming, data structure & algorithm knowledge background, but haven't been in the interview preparation mode for a while. Comparing to self learning through leetcode, learning through this book is definitely more systematic, where you can quickly acquire basic knowledge like the library you should know, and you can learn how to obtain a desired solution step by step beginning from a naive (brute force) approach. In addition, it is particularly good for one who plans to write in Python. There is rarely good material or nice codes in Python in the market. Codes in this book set up an example of good Python writing habits, and help one be familiar with Python programming quickly.
H**E
Secured Google
Having used a lot of the other prep books before this one, I can say confidently this one secured me a job at Google. I did however pair this with Cracking the Coding Interview, Interview Cake and Leetcode. So my understanding of the concepts was already there but this book seemed to add the finishing touches I needed to confidently go into an interview. I'm writing this review 5 years later after holding my job at Google. Now I'm back on the book looking to secure a position at Facebook.
C**R
Excellent, dense, great for stepping up to the next level.
Very dense and full of good practice problems for all kinds of data structures and algorithms. The author gives various levels of answers from simple brute force ways to more complicated, clever solutions to common problems.
D**S
Bom
O livro tem inúmeros problemas com resolução em python, e também dá boas dicas para a entrevista. Porém a letra é pequena e as explicações não são muito didáticas se você não estiver familiarizado com as questões. Acho uma boa para acompanhar as resoluções em vídeo a partir de outra fonte, ou revisar como banco de questões se vc já tem mais experiência.
A**O
A must-read for clear thinking
Before this book, I looked at a bunch of coding resources. I tried a lot: Neetcode's list of questions, Leetcode, youtube channels, big lists on Github, textbooks (Knuth, Tamassia). The issue with textbooks, of course, is they're not applied enough, so you easily forget everything you read. And some issues with online resources is I find that they a) do not have consistently high quality in their solutions/explanations and b) come up with groupings for questions like "sliding window" and "two pointers" that don't fully make sense to me. Often, these resources are by people whose eloquence and marketting match or outpace their technical qualifications. This book is basically a lifetime subscription to a very well curated Leetcode. The chapters are organized by core concepts in applied CS. They not only are relevant for interviews, but serve as great intuition for how various algorithms that run the world are implemented. The answers are of consistently high quality in both coding and explanation. No more questioning "why does that algorithm work?" - the authors use simple but satisfying mathematical reasoning to back their answers. The accompanying EPIJudge Github repo, which has templates and automated testing for almost every problem in the book, gives the book the same dopamine hits as Leetcode. I'm thankful for this book. I finally understand the solution to the buy/sell stock problem. And its elegant and memorable solution to the knapsack problem saved me in the final round of a recent Google interview. This book covers good ground!
V**.
Un libro desafiante.
Estoy disfrutando mucho este libro, pero... yo ya tengo experiencia en estos temas. Este libro al igual que el otro cracking the interview requieren conocimientos previos, pero este libro es la mejor compra.
M**N
Content good, printing terrible
Can't comment on the content of the book as yet. The book's printing margins however are almost non-existent. This means the printing almost goes into the fold and you have to pry the pages apart to read the end and start of sentences. This gets very annoying really fast.
Trustpilot
2 weeks ago
1 week ago