£23.83
  • RRP: £24.95
  • You Save: £1.12 (4%)
FREE Delivery in the UK.
In stock.
Dispatched from and sold by Amazon.
Gift-wrap available.
Quantity:1
Elements of Programming I... has been added to your Basket
Trade in your item
Get a £5.54
Gift Card.
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 4 images

Elements of Programming Interviews: The Insiders' Guide Paperback – 11 Oct 2012

2 customer reviews

See all formats and editions Hide other formats and editions
Amazon Price New from Used from
Paperback
"Please retry"
£23.83
£12.10 £15.39
£23.83 FREE Delivery in the UK. In stock. Dispatched from and sold by Amazon. Gift-wrap available.

Special Offers and Product Promotions

  • Win a £5,000 Amazon.co.uk Gift Card for your child's school by voting for their favourite book. Learn more.
  • Prepare for the summer with our pick of the best selection for children (ages 0 - 12) across Amazon.co.uk.

Frequently Bought Together

Elements of Programming Interviews: The Insiders' Guide + Programming Interviews Exposed: Secrets to Landing Your Next Job (Wrox Professional Guides)
Price For Both: £43.82

Buy the selected items together


Trade In this Item for up to £5.54
Trade in Elements of Programming Interviews: The Insiders' Guide for an Amazon Gift Card of up to £5.54, which you can then spend on millions of items across the site. Trade-in values may vary (terms apply). Learn more

Product details

  • Paperback: 484 pages
  • Publisher: CreateSpace Independent Publishing Platform (11 Oct. 2012)
  • Language: English
  • ISBN-10: 1479274836
  • ISBN-13: 978-1479274833
  • Product Dimensions: 15.2 x 2.8 x 22.9 cm
  • Average Customer Review: 5.0 out of 5 stars  See all reviews (2 customer reviews)
  • Amazon Bestsellers Rank: 94,270 in Books (See Top 100 in Books)

More About the Authors

Discover books, learn about writers, and more.

Product Description

About the Author

Adnan, Amit, and Tsung-Hsien have worked at Google, Facebook, Microsoft, IBM, Qualcomm, and several startups. They co-developed algorithms and systems that are used by over one billion people everyday. They have extensive experience with interviewing candidates, making hiring decisions, and being interviewed.

Adnan Aziz is a professor at the Department of Electrical and Computer Engineering at The University of Texas at Austin, where he conducts research and teaches classes in applied algorithms. He received his Ph.D. from The University of California at Berkeley; his undergraduate degree is from Indian Institutes of Technology Kanpur.

Amit Prakash is a founder of Scaligent, a Silicon Valley startup. Previously, he was a Member of the Technical Staff at Google, where he worked primarily on machine learning problems that arise in the context of online advertising. Before that he worked at Microsoft in the web search team. He received his Ph.D. from The University of Texas at Austin; his undergraduate degree is from Indian Institutes of Technology Kanpur.

Tsung-Hsien Lee is a Software Engineer at Google. Previously, he worked as a Software Engineer Intern at Facebook. He received both his M.S. and undergraduate degrees from National Tsing Hua University. He has a passion for designing and implementing algorithms. He likes to apply algorithms on every aspect of his life.

Inside This Book

(Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index | Back Cover
Search inside this book:

Customer Reviews

5.0 out of 5 stars
5 star
2
4 star
0
3 star
0
2 star
0
1 star
0
See both customer reviews
Share your thoughts with other customers

Most Helpful Customer Reviews

1 of 1 people found the following review helpful By MrZipf on 11 Feb. 2015
Format: Paperback Verified Purchase
I interviewed at Amazon, Google, and Facebook this year and found this the best questions book by some way. I thoroughly recommend following the question tracks presented in the book and start practicing at least a 6 weeks ahead of interviews. The questions here may even be a little harder than you'll meet on interview, but best to be prepared.

I'd also recommend Crack the Coding interview which has good guidance and is a good intro to problems though ultimately the questions are too widely studied to appear in interviews. Other must read recommendations for questions would be Programming Problems 1&2 by Bradley Green, Top 20 Interview Questions by Lian Quan.

From an algorithms perspective, good books are Algorithms by Dasguta et al (available free online, but having the book is better), The Algorithm Design Manual by Steven Skienna, Introduction to Algorithms by Cormen et al. And long time favorites are Jon Bentley's Programming Pearls and More Programming Pearls.

Other stuff I did for the interviews:

1) Stop drinking caffeine.
2) Attempt at least 2-3 questions a day
3) Pick a programming language for questions and stick to it.
4) Buy a big whiteboard and practice on it.
5) Take 2 days off for onsite interviews - 1 day to unwind and refresh, 1 day for the onsite.

Good luck!
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
2 of 2 people found the following review helpful By mihai tache on 22 May 2014
Format: Paperback Verified Purchase
I used all the major interview books on the market (Cracking the coding interview, Programming Interviews Exposed etc) and this is by far the best one. I got a full time offer at Google after using this...so it's worth it.

Thanks!
1 Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Helpful Customer Reviews on Amazon.com (beta)

Amazon.com: 167 reviews
34 of 36 people found the following review helpful
Great text for technical interviews 15 Nov. 2012
By goforfun - Published on Amazon.com
Format: Paperback Verified Purchase
In summary, I strongly recommend this book for anyone who wants to excel in interviews in top software companies.

This book has extensive interview problems with detailed solutions. It covers basic to advanced algorithm solving techniques. The book is very comprehensive and detailed - it is by far the largest collections of such problems that I know of. I really liked the fact that most problems have detailed programs which I could download complete versions of. The figures were also very helpful for me to understand some of the harder concepts.

Materials in later chapters which contain dynamic programming and graph algorithms make this book stands out among other interview books. These materials especially help readers to think critically when facing difficult programming problems with efficiency constraints.

I also purchased "Cracking the Coding Interview" for preparing for my interviews. Compared to that book, I found Elements of Programming Interviews to be better preparation for the questions I was asked at the on-site interviews. Cracking the Coding Interview had more basic questions, the kind I was asked in phone screening and on-campus interviews.

I am very fond of algorithms, and, just like Keith wrote in his review, Elements of Programming Interviews nicely supplements traditional algorithm textbooks which lack of practical examples.
38 of 43 people found the following review helpful
I bought one copy of book; after reading it, I bought another one for my friend! 23 Oct. 2012
By ChengYi He - Published on Amazon.com
Format: Paperback Verified Purchase
I've read through this book in great detail and I found it very useful for preparing for interviews. I appreciate the quantity, quality, and selection of problems. The detailed solutions with working code and well-drawn figures aided my understanding.

These problems would help you understand what is asked at interviews. Although the questions at the interview may not be exactly from the book, the book questions are very similar to those I have seen. I believe reading the book helps me stay calm and solve those questions because it helps me get used to thinking of challenging problems. I really like how the book teaches me to apply the same basic problem solving patterns again and again to conquer problems. If your goal is to work at a prestigious company, you should definitely read these examples before interview. In my experience, without the right preparation it is very hard to even know how to start answering their questions.

Almost each solution includes source code. This code has saved me lots of time. As Knuth said "It has often been said that a person does not really understand something until he teaches it to someone else. Actually a person does not really understand something until after teaching it to a computer." You cannot persuade interviewers that you really understand it unless you could code it correctly. Especially if your first question is data structure problem, you should code a correct and efficient solution quickly and elegantly. It's a pity if you know how to solve a problem but cannot code it when interviewing at your dream company.

I am passionate about programming and the book stimulated my mind a great deal. I like how the authors explain algorithms, and this made me want to keep reading. It was never a burden to work through the book.

I think this book would help lots of people who want to be a software engineer at the best companies and highly recommend you to buy one.
10 of 10 people found the following review helpful
Most Helpful Book for Job Interviews 19 Oct. 2013
By F. Li - Published on Amazon.com
Format: Paperback
I am a Computer Science graduate. A friend of mine recommended it to me after he got offers from MSFT and FB by using the book. I have used the book for a while now, and I think I can give some information to help other readers to make a good decision.

Basically this book contains a set of programming problems to warm you up for a job interview. There are many other job hunting books too, so what makes this one special?
I would say it has the following advantages:

0. Smart algorithms and solutions. Better than many other resources you could find.
1. Challenging problems, making it useful for preparing top companies interviews.
2. Source code website. We can actually run the code and compare it with ours. Often, I first write my own program and test it with their driver program.
3. High quality C++11 code with very few bugs. It helped me to refine my coding skills and styles.
4. Study guide. Very helpful for iterative studying.
5. Book chapter organization. It is both detailed and close to complete.
6. Good coverage of recent algorithms.

Let me elaborate a bit.

Taking item 0, Smart algorithm and solutions as an example:
If you have prepared for job interviews just a bit, you may know there is a frequent question for "designing a Stack with Max/Min operations". I solved the problem by myself and after comparing my solution with other resources, I thought mine is optimal - until I saw the solution from this book. It is more space efficient by storing the frequency information.
Another example is the "Permutation Problem". Before I read the book, I already had a decent solution. But the "swap based" solution in this book is simply more elegant and more flexible for solving other problems.
This kind of "Ah-ah" moments comes quite often when I read the book.

Taking item 6, Good coverage of recent algorithms as another example:
If you read the the Hashing chapter of the book, You will notice that it covers the "Min-hash" algorithm. This is quite surprising to me as it is a new algorithm in the document/image search area. I know it because I did my research on the topic. I'd never expect it to appear in an interview book.

To summarize, this is a well organized and supported book for learning CS problem solving. The high quality solutions presented in this book will definitely help us to impress interviewers. I think it is the most useful resource for preparing job interviews.
Other than interview preparation, we can learn a lot other practical skills/knowledge from the book too.

Finally, here is my personal advice about how to use the book: the book's study guide is your good friend. Because the book contains some quite hard problems, following the guide will make your learning more efficient.
11 of 13 people found the following review helpful
Nothing short of 5 stars - THE best programming prep book out there 28 Oct. 2013
By aditya - Published on Amazon.com
Format: Paperback
Whether you are preparing for an interview or not, every software developer should own this book! If you are infact preparing, this is a MUST have! Period!

Bought this book after my sister told me about it. The first four chapters looked pretty broad yet informative but somehow I wasn't impressed in the beginning. It was towards the end of the 5th chapter that things got super interesting and I got glued to the book. I consider myself a fairly experienced developer but after working on some of the questions and especially after looking at the solutions, I realized that there are much smarter ways to solve problems. I was looking at geeksforgeeks and careercup questions earlier but was never confident that I had covered all the topics. But after going through the book and after solving the problems I got this immense confidence that I now am better equipped with solving any complicated interview question (yet to be tested : ) but I am definitely a lot more confident than I was before).

Each question is very well thought out and definitely the solutions are one of the smartest ways to code/solve. I was blown away by some of the elegant solutions in the book. I would recommend trying to solve the questions on your own first without looking at the solution at all and then spend time comparing the approach. I specifically like the way the complexity of the topics grows gradually across chapters and also within each chapter.

Also, the book covers almost all sorts of problems that a typical company like google/facebook would ask - ranging from primary data structures to applications of bsts(I didnt know such complex problems could be solved just with bsts) , basic and indepth problems on greedy and dynamic programming and entire set of chapters dedicated to graphs/P vs NP and probability/discrete math. The authors have done an excellent job of making sure that you don't get lost in reading the theory(like in Cormen or other similar books). But instead they focussed primarly on problem solving as such.

I haven't come across any other book on the market that is so comprehensive and most importantly provides a base reference in terms of problems/solutions and the approach to various types of subtle problems. I seriously cannot think of any negatives in the book at all. This book truly does more than 100% justice to its title!
8 of 9 people found the following review helpful
GETTING THE DREAM JOB... Comparing the Top 4 IT Interview Books 4 July 2013
By Let's Compare Options Preptorial - Published on Amazon.com
Format: Paperback Verified Purchase
I worked with the data science association on their new standards for "Data Scientist" interviews (entry salary of $125,000), and both real questions and after interview polls were included for the biggest names in data today, from the web to corporate and government IT. "Data Scientist" is one of the hottest new jobs out there today, and some companies are even forming CDSO jobs--Chief Data Science Officer!

To begin, ALL FOUR of the books in this review are 5 star "superstars" for IT interviews. The two problems are, my library customers want to know the top two, and our Amazon shoppers want to know if they can get away with one, two, three, or if they have to buy all four! Of course the answer depends both on the focus of your resume, and the overlap/focus in the four books.

First, the summary, by author, title/Amazon link, year published/edition, number of pages, trim and cost, problems included, main language(s) foci. These four are the most frequently purchased by the over 100,000 libraries (including corporate technical libraries and schools as well as private and public) in our database. (Note: page counts are via visual inspection at the time of this writing, not Amazon stats. Pages can vary with on-demand books.).

Aziz, Elements of Programming Interviews: 300 Questions and Solutions by Aziz, Adnan, Prakash, Amit, Lee, Tsung-Hsien 1st (first) Edition (10/11/2012), 2012, 481 pages, 6 x 9, $25, 300 problems (mostly C++, concurrency in Java, discrete math in formulas and English)
McDowell, Cracking the Coding Interview: 150 Programming Questions and Solutions, 2011 (5th edition), 500 pages, 6 x 9, $23, 150 problems, (mostly all Java except of course the C, C++ question sections!)
Guiness, Ace the Programming Interview: 160 Questions and Answers for Success, 2013, 419 pages, 6 x 9, $20, 160 problems, (mostly Java and C# but some unusual JavaScript, SQL, Ruby and Perl examples too)
Mongan, Programming Interviews Exposed: Secrets to Landing Your Next Job, 2013 (ed. 3), 301 pages, 7.4 x 9, $18, 150+ problems (C, C++, C#, Java)

All four of these fine prep texts cover the usual suspects in Algorithms and Data structures, including a focus on "scalable" problems of most concern to the Amazons, Googles, Facebooks, etc. of the world. These include recursion, arrays, lists, hash tables, binary searches and trees, and other foundation coding subjects.
All also cover the usual tricks, brain teasers, presentation problems, prep, process, etc. issues, and in the case of Cracking, specifics on many different company processes.

The divergence is in the "extras." Aziz jumps into parallel computing and covers discrete math (in grad school joke terms, all the computer oriented math that has been taken out of high school courses). McDowell has an unusually well written probability section. Guiness is very up to date with cross platform apps and concurrent programming nightmares, and goes into both more depth and detail on individual topics like big O notation. Mongan is published by wrox, and has not only technical editors, but outstanding web resources. His database section is the most robust of the group.

Aziz and McDowell are print on demand, which usually means there are many more errors in early going, but much faster correction of them via almost weekly files to the printer. Guiness is Wiley and bulletproof. We've tested the code extensively in all four (my payroy sister programmers, not me!) and ALL of them are outstanding, with very few errors at this writing, which can only get better fast in the two PODs, and wasn't a problem to begin with via the technically edited wrox and wiley teams.

Surprisingly, there is NOT a lot of overlap in solutions in these four texts, just as there IS a lot of overlap in the questions (strings, arrays, binaries, hashes... structures are structures and algos are algos). The difference in ALL these books (as opposed to a Cormen) is that the algorithm examples are not academic--they give you many options to "cheat" - and most of the cheats are more real world than techniques given in the 1,300 page algo function texts.

McDowell is the industry standard, but she teaches very much to Google, as does Aziz, meaning web focus, and even a little forgiveness on php, but NO forgiveness on memory or scalability. If you're a library client and have to pick two, we advise one from the McDowell/ Aziz dyad and one from the Guiness/ Mongan dyad. If you're applying for a job with a specific language requirement, these self sort, although of course all are object oriented today.

For shoppers preparing for a real interview: buy all four. I mean, come on. This is your future! You can get all four for the price you'd pay for a larger (way less useful) algo + data structure or individual language text, and maybe less. Some points about interview technique are common, but all four offer different and important examples in approaches to solutions, even though they share common algorithmic and data structure challenges.

IRONY: The only programming area growing faster than data scientist today is at the other end of the big scale spectrum: embedded systems. I kid you not, specialize in embedded, and you're GUARANTEED a dream job, both due to the explosion of these systems, and the rarity of programmers here (but yes, you have to get into circuits!). Our sister Payroy group shows job stats, demand and salaries that are to die for if you go there-- way better than Google. NONE of these books cover it (because other than mobile and server embeds, embedded was traditionally automotive and industrial, but even "Google and Microsoft TV" type ventures are now hungering for it).

There is NO good interview book out on embedded yet, but these two are the best of breed in the field itself: 1. Samek (Practical UML Statecharts in C/C++: Event-Driven Programming for Embedded Systems) and 2. White (Making Embedded Systems: Design Patterns for Great Software). Why C and C++? Because that's where the majority of electronics still reside, and "object" programmers in the field often just use the C subset of ++ and don't really get into sexy classes/methods/parents/kids, etc.! 6 months brushing up on this, specializing, and going for an embedded job will be worth years of competing with the interviews in these texts!!!

Now, a simple tip. I was part of a team that interviewed for a high level, very high paying digital art programming position at shader joes dot com. One candidate stood out as really technically challenged--she even confused a call with a register in one of her answers! She called herself an "autodidact" - meaning, unlike Yahoo, we can't be recruiting only from the 18 top schools.

At the end of her interview, she asked us to check out a disc she'd brought. She had programmed her own video game with movie-real characters, explosions, storyline, etc. using Unity, Maya, blastcode, Python, Lua and C#, with web distributions in Java, HTML 5 and php. She proceeded to explain her entire process, from idea to distribution. She was hired before she could reach the elevator. In olden-days, old timer parlance, don't forget your "portfolio" if you have one! It can trump a LOT of the bureaucratic hurdles!

EMAILERS ANSWER: IF you are a manager, rusty at coding, a data scientist, etc. and are in an interview where you have to "understand" coding basics, but not necessarily code, see our review of Karumanchi (Coding Interview Questions).

Library Picks reviews only for the benefit of Amazon shoppers and has nothing to do with Amazon, the authors, manufacturers or publishers of the items we review. We always buy the items we review for the sake of objectivity, and although we search for gems, are not shy about trashing an item if it's a waste of time or money for Amazon shoppers. If the reviewer identifies herself, her job or her field, it is only as a point of reference to help you gauge the background and any biases.
Were these reviews helpful? Let us know


Feedback