Hacker News new | ask | show | jobs
by rifung 3637 days ago
Not the person you're asking but I previously passed the interview at Amazon.

If you don't know the concepts/data structures, just read more about them, either on the internet or from a book. The internet is usually sufficient for most things but if you want to go more in depth, CLRS is the book that most people recommend. I haven't read it personally. Don't feel bad if you can't answer the questions, a lot of it is practice, and if you don't know the concepts beforehand it's better that you just read the solutions.

1.) I learned in school 2.) It doesn't really matter, just use the one you're more comfortable with. If you're equally comfortable, I'd recommend Python because you're going to be writing on the whiteboard and I imagine C/C++ is more verbose, so you'll waste more time writing. Your hand might also get tired.

You can also go on careercup.com to get more questions after you're finished with the book so you can practice.

1 comments

>CLRS is the book that most people recommend.

CLRS is a good reference if you want to look up some canonical algorithm and read the accompanying discussion. It is a terrible way to learn if you're not combining it with something more explanatory, like a professor. It's an extremely dense wall of pseudocode and proofs.

Kleinberg and Tardos is a little handwavy with its mathematical proofs, but does an excellent job of motivating the examples, holding your hand and explaining why the next step is next, etc.

It is not, however, a survey of the canonical algorithms and data structures. You will not learn how to balance or invert a binary tree. (My algorithms class was based on K&T, and while I learned a ton, I don't feel I learned how to pass a whiteboard interview). More of an introduction to algorithmic thought, with algorithms selected for their pedagogical value.

CLRS is a huge tome. I have no idea why it's always recommended as an introduction to algorithms. It seems like it has the breadth, if not the depth, of TAOCP in terms of being a perennially recommended work that no one actually reads all of the way through.