Full description not available
P**N
must read book for coding interviews
I rarely write an amazon product review before. But couple of days ago, one of the authors, Tsung-Hsien Lee actually contacted me regarding one of the bugs I submitted when I used the book to prepare for my interview. I thought the bug report will not be responded, but to my surprise, Tsung-Hsien sent me a personal email saying thank you and also updated version of the code. To people who are interested in the question, it is the question of finding the maximum rectangle area under the skyline.A little bit on my background, I only ever take one introduction to algorithm class in college, where it teaches required fundamentals such as hash, trees, graphs, divide and conquer, etc. I read this book by the recommendation of my internship mentor, he probably knows best the limit of my programming experience, and he told me to just focus and read one book for interview prep. I took his advice deeply, and at the time, although I have the other book (cracking the code interview), I decided to just spend my time and effort in EPI.The first time experience reading this book is harsh. I spent the entire day just trying to read solution and understand what it means for the entire day. The solution presented is terse, but this is what you would be expected if you go in for interview. Not too much BS, just straight ideas and to the point. But for people out there worrying about difficulty of this book, my advice is to skip some uncomfortable chapters first (for me, it was the binary, numbers and primitives), focus more on the recursive section (which I found it to be very consistently structured and explained). Spend at least 1 to two weeks grinding through the pain, and I promise it will get easier as it goes.There are advices to always come up with your own solution first before reading the book's solution. I dont know. Maybe if you are already experienced, that will work to stimulate your long lost problem solving instinct. But my strategy was to sit down read the entire chapters, really understand (dont lie to yourself). And do it the second round without looking (or at least try not looking). I found the second time read around was a great opportunity for me to come up with my own structures (which I am sure each people have their own) for answering the questions.Overall, I spent 3 solid months preparing using this book. I do get several offers from the usual big companies and some smaller companies. While there will always be questions that is out of the book, at least I would say, 80 to 90% of the interview questions I had (~20 interviews) are taken verbatim from this book. So if you even memorized the book, you will pass the minimal requirement for technical interviews. Of course, go online and search for questions that appear in individual companies, esp smaller companies/startups. You will be surprised how "not big" the pool of questions for coding interview is.
A**N
Very useful book that I would keep for a long time
I had both the book in Java and the original one (I think it was in C++). I'm writing this review for the Java version since I used it more extensively to prepare for my job interviews, and just reviewing concepts.I heard of this book through a friend, who had a lot of experience interviewing for different companies. When I first picked it up, I felt the book was very diffiicult. I spent many hours reading through the questions, thinking, trying to answer, and eventually flipping to the answer section. Then, I realized that I was ill-equiped. My fundamentals weren't strong enough to fully appreciate the book. So, I put the book on hiatus, and went to brush up on my basic algorithm and data structure understanding. I did not have the pressure of having interviews to prepare at this point, so I took a while to just soak all the knowledge that I'd need.For the second time, I felt much more confident. I was actually able to sovle a few questions. The first few questions are usually more doable, so I tackled them first. It was a good exercise of building up more confident as I go along. However, it still took a good amount of time to go through a decent amount of the questions. I also cloned the github repo for the book, and compared my code with those. One thing that I love about this book is the style. The name of variables, methods, etc were very clear, and easy to understand. I followed their style, and received some positive comments in an interview I had. So that's a plus!I keep going back to this book every once in a while to make sure I still understand what it is. I use it as a benchmarking tool nowadays. If I can solve a good amount of questions, I know I'm still somewhat ok. If I start being unable to solve them, I know I'm sloppy. The difficult section is really difficult, took me a long time to finish some of them. But the feeling of being able to solve just one of them paramounts to nothing I've felt. :)Another worthy thing to note is that the authors are constantly trying to improve this book. They are very committed to making this book the best of the best on problem solving. I had the chance to talk with Tsung-Hsien Lee, and I was taken aback by how friendly and down to earth he is. He shared with me how they came about with the book, and what he hopes for it to become in the future. I don't think there're many books where the authors are this committed to the readers, and even attempt to build a community around it.All in all, definitely a worthy investment, whether you're having interviews coming up, or just want to keep your skills sharp. I know I'm keeping this book for a long time!
Trustpilot
1 day ago
2 days ago