New Arrivals
Enjoy fast, free delivery, exclusive deals, and award-winning movies & TV shows.
Buy new:
-5% $37.98
FREE delivery Friday, February 20
Ships from: Amazon.com
Sold by: Amazon.com
$37.98 with 5 percent savings
List Price: $39.95 Image
FREE delivery Friday, February 20
Or Prime members get FREE delivery Tuesday, February 17. Order within 14 hrs 56 mins.
In Stock
$$37.98 () Includes selected options. Includes initial monthly payment and selected options. Details
Price
Subtotal
$$37.98
Subtotal
Initial payment breakdown
Shipping cost, delivery date, and order total (including tax) shown at checkout.
Shipper / Seller
Amazon.com
Amazon.com
Shipper / Seller
Amazon.com
Returns
FREE 30-day refund/replacement
FREE 30-day refund/replacement
This item can be returned in its original condition for a full refund or replacement within 30 days of receipt.
Read full return policy
Payment
Secure transaction
Your transaction is secure
We work hard to protect your security and privacy. Our payment security system encrypts your information during transmission. We don’t share your credit card details with third-party sellers, and we don’t sell your information to others. Learn more
$2.70
Item in good condition. Textbooks may not include supplemental items i.e. CDs, access codes etc... Item in good condition. Textbooks may not include supplemental items i.e. CDs, access codes etc... See less
$3.98 delivery Tuesday, February 24. Details
Or fastest delivery Thursday, February 19. Details
Only 1 left in stock - order soon.
$$37.98 () Includes selected options. Includes initial monthly payment and selected options. Details
Price
Subtotal
$$37.98
Subtotal
Initial payment breakdown
Shipping cost, delivery date, and order total (including tax) shown at checkout.
Access codes and supplements are not guaranteed with used items.
Added to

Sorry, there was a problem.

There was an error retrieving your Wish Lists. Please try again.

Sorry, there was a problem.

List unavailable.
Kindle app logo image

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.

Read instantly on your browser with Kindle for Web.

Using your mobile phone camera - scan the code below and download the Kindle app.

QR code to download the Kindle App

Follow the authors

Get new release updates & improved recommendations
See all
Something went wrong. Please try your request again later.

Elements of Programming Interviews in Python: The Insiders' Guide

4.4 out of 5 stars (926)

{"desktop_buybox_group_1":[{"displayPrice":"$37.98","priceAmount":37.98,"currencySymbol":"$","integerValue":"37","decimalSeparator":".","fractionalValue":"98","symbolPosition":"left","hasSpace":false,"showFractionalPartIfEmpty":true,"offerListingId":"UAw0AubZv28cVfmcB5UhuL88ULW%2BCaCTt9slkTjCMWPnbunrZh%2FMLVpg1cfPq%2BCqVzwbs0O61gWUUFKLc320Q8ovmjK9dU7I1V0TUdoMxIqPgBFZOpELsWKbYe6ePqjVCVIVWFGqRSRuSblNGTE30g%3D%3D","locale":"en-US","buyingOptionType":"NEW","aapiBuyingOptionIndex":0}, {"displayPrice":"$2.70","priceAmount":2.70,"currencySymbol":"$","integerValue":"2","decimalSeparator":".","fractionalValue":"70","symbolPosition":"left","hasSpace":false,"showFractionalPartIfEmpty":true,"offerListingId":"UAw0AubZv28cVfmcB5UhuL88ULW%2BCaCTD%2BEpa0J7mIWJl7xVl%2BGNaBH1e%2Bf3cRsRnuGYVCRzMcyJ0nfTh%2FqcsCZDgQWOtGtpPhi6%2FyeTWVDMVkqOdVd5M8piGqIT8BE8IeX5%2FT2PWmdXmmKOPuELC54xrME5y%2Bf44LMJjQLmEKYZidWyEo94OYWkMrmt6Eis","locale":"en-US","buyingOptionType":"USED","aapiBuyingOptionIndex":1}]}

Purchase options and add-ons

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


4.44.4 out of 5 stars 926
-9% $36.18
List:$39.95
Sold by Orya Bookstore and ships from Amazon Fulfillment.
+
4.54.5 out of 5 stars 1,251
$45.00
In Stock
Ships from and sold by Amazon.com.
Total price:
To see our price, add these items to your cart.
Details
Added to Cart
Some of these items ship sooner than the others.
Choose items to buy together.

Customers also bought or read

Loading...

Editorial Reviews

Review

"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

"This book prepares the reader for contemporary software interviews, and also provides a window into how algorithmic techniques translate into the workplace. It emphasizes problems that stem from real-world applications and can be coded up in a reasonable time, and is a wonderful complement to a traditional computer science algorithms and data structures course."
Ashish Goel / Professor, Stanford University

"A wonderful resource for anyone preparing for a modern software engineering interview: work through the entire book, and you'll find the actual interview a breeze. More generally, for algorithms enthusiasts, EPI offers endless hours of entertainment while simultaneously learning neat coding tricks."
Vineet Gupta / Principal Engineer, Google

From the Author

Have you ever...
  • Wanted to work at an exciting futuristic company?
  • Struggled with an interview problem that could 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).

Product details

  • Publisher ‏ : ‎ CreateSpace Independent Publishing Platform
  • Publication date ‏ : ‎ September 15, 2016
  • Language ‏ : ‎ English
  • Print length ‏ : ‎ 441 pages
  • ISBN-10 ‏ : ‎ 1537713949
  • ISBN-13 ‏ : ‎ 978-1537713946
  • Item Weight ‏ : ‎ 1.9 pounds
  • Dimensions ‏ : ‎ 7 x 1 x 10 inches
  • Best Sellers Rank: #74,608 in Books (See Top 100 in Books)
  • Customer Reviews:
    4.4 out of 5 stars (926)

About the authors

Follow authors to get new release updates, plus improved recommendations.

Customer reviews

4.4 out of 5 stars
926 global ratings

Customers say

Customers find the book excellent for interview preparation, particularly for Facebook interviews, and appreciate its content and value for money. Moreover, the Python skills aspect receives positive feedback, with one customer noting it helps solidify problem-solving abilities. However, the readability and explanation quality receive mixed reviews, with several customers finding it hard to follow and lacking clarity. Additionally, customers disagree on the complexity of the problems and the writing style, with some appreciating the Python 3.6 implementation while others find the writing dense.
AI Generated from the text of customer reviews

Select to learn more

45 customers mention interview preparation, 44 positive, 1 negative
Customers find this book extremely helpful for interview preparation, particularly at Facebook, and appreciate its comprehensive collection of complex coding tasks.
An amazing book for coding interviews. I regard it as the single best book for coding interviews in the market....Read more
This is a great introduction to computer science fundamentals using python....Read more
Best book to prepare for programming interviews....Read more
I think the book is very useful. I've started using it....Read more
18 customers mention python skills, 15 positive, 3 negative
Customers praise the book's Python content, highlighting its nice tricks and solutions, with one customer noting it helps habitualize good programming practices and solidify problem-solving skills.
...It also provides nice tricks and shortcuts that can be used in Python to provide solution that is concise but also that has required space/time...Read more
There are a lot of positives in this book. The strategies, interview prep, and types of problems are all great....Read more
...Compact code Good solutions Cons: Font is too small. Good code doesn't mean smallest number of lines....Read more
This book is extremely useful for my preparation. I got an internship at a top company with this book as the main resource. Highly recommended.Read more
10 customers mention value for money, 8 positive, 2 negative
Customers find the book very much worth the investment.
...quantity, and I think this book was certainly worth the price for me due to its quality and accessibility.Read more
...an organized set of good problems and decent solutions, this book is very valuable.Read more
A great book for its price and value delivered....Read more
Hard to read. It was a waste of money for me. Similar materials could be found on YouTube really.Read more
9 customers mention content, 9 positive, 0 negative
Customers appreciate the content of the book.
The book’s content is fine. I have a real problem with the formatting....Read more
The content of the book is great so far. The packaging was really bad, it was in a plastic cover....Read more
Book content is great, however, my book came with stains(some sort of sauce) which I had to clean with a wet tissue (with still a little residue)....Read more
The content is amazing, but the quality control from the printer leaves something to be desired....Read more
26 customers mention explanation quality, 15 positive, 11 negative
Customers have mixed opinions about the book's explanations, with some finding them really good while others describe them as extremely poor.
...They have a very large number of difficult problems, explain them clearly, and have clear, working code....Read more
...90%+ of this book was way too basic and for the rest it did not give any/enough detail in its "solutions" especially the design section.Read more
...Comparing to self learning through leetcode, learning through this book is definitely more systematic, where you can quickly acquire basic knowledge...Read more
...And sometimes, the presented solution is completely unintuitive or badly styled - like using global variables instead of passing parameters....Read more
13 customers mention complexity, 8 positive, 5 negative
Customers have mixed opinions about the complexity of the book, with some appreciating the good set of problems, while others find it frustrating, with one customer noting there's no gradual increase in difficulty and another mentioning missing answers for problem variants.
Interesting problems, but can't help but think that the problem requirements and solutions are straight from languages like C rewritten in Python....Read more
This is an incredibly frustrating book....Read more
...Good set of problems What I dislike: -...Read more
...Great collection of problems and bootcamps at the beginning of every topic....Read more
13 customers mention writing quality, 7 positive, 6 negative
Customers have mixed opinions about the writing quality of the book, with some noting that it is written in Python 3.6, while others find it poorly written.
...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....Read more
...As others have mentioned, the writing is dense and requires multiple readings to tease out the authors’ intent....Read more
I just got the book today, after reading the first chapter the book is well written. However the pages are printed at an angle....Read more
...so far is the type of very white paper that is used and the typesetting of the book. It feels photocopied not printed and not pleasing to the eye.Read more
30 customers mention readability, 8 positive, 22 negative
Customers find the book unreadable and hard to follow, with several mentioning issues with the Kindle version.
Hard to read. It was a waste of money for me. Similar materials could be found on YouTube really.Read more
...(unreadable and massively long lines, impossible to debug or to maintain)...Read more
...The book is still readable but the paper cut and printed lines are not straight or professional....Read more
...badly scanned PDF of the book with poor formatting making the book difficult to read. I returned it for a refund.Read more
Horrible physical quality of the book
5 out of 5 stars
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
Thank you for your feedback
Sorry, there was an error
Sorry we couldn't load the review

Top reviews from the United States

  • Reviewed in the United States on May 21, 2018
    Format: PaperbackVerified Purchase
    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!
    23 people found this helpful
    Report
  • Reviewed in the United States on August 31, 2021
    Format: PaperbackVerified Purchase
    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.
    2 people found this helpful
    Report
  • Reviewed in the United States on June 22, 2021
    Format: PaperbackVerified Purchase
    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.
    7 people found this helpful
    Report
  • Reviewed in the United States on April 23, 2018
    Format: PaperbackVerified Purchase
    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.
    70 people found this helpful
    Report

Top reviews from other countries

Translate all reviews to English
  • Cooper
    5.0 out of 5 stars Excellent, dense, great for stepping up to the next level.
    Reviewed in Japan on April 13, 2019
    Format: PaperbackVerified Purchase
    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.
  • Ashminjayson
    5.0 out of 5 stars Must have when preparing for coding interviews.
    Reviewed in India on September 6, 2024
    Format: PaperbackVerified Purchase
    A definite must have to improve your problem solving and coding skills.
  • Douglas
    3.0 out of 5 stars Bom
    Reviewed in Brazil on January 26, 2023
    Format: PaperbackVerified Purchase
    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.
    Report
  • Andrew Luo
    5.0 out of 5 stars A must-read for clear thinking
    Reviewed in Canada on November 1, 2024
    Format: PaperbackVerified Purchase
    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!
  • victor m.
    5.0 out of 5 stars Un libro desafiante.
    Reviewed in Mexico on October 29, 2022
    Format: PaperbackVerified Purchase
    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.