Cracking the coding interview : 189 programming questions and solutions
(2016, original release: 2015)

Nonfiction

Book

Call Numbers:
005.1023/MCDOWELL,G

Availability

Locations Call Number Status
Adult Nonfiction 005.1023/MCDOWELL,G Available

Details

PUBLISHED
Palo Alto, CA : CareerCup, LLC, 2016
©2015
EDITION
Sixth edition
DESCRIPTION

x, 696 pages : illustrations ; 26 cm

ISBN/ISSN
9780984782857, 0984782850, 9780984782857
LANGUAGE
English
NOTES

I. The interview process. Why? ; How questions are selected ; It's all relative ; Frequently asked questions -- II. Behind the scenes. The Microsoft interview ; The Amazon interview ; The Google interview ; The Apple interview ; The Facebook interview ; The Palantir interview -- III. Special situations. Experienced candidates ; Testers and SDETs ; Product (and program) management ; Dev lead and managers ; Startups ; Acquisitions and acquihires ; For interviewers -- IV. Before the interview. Getting the right experience ; Writing a great resume ; Preparation map -- V. Behavioral questions. Interview preparation grid ; Know your technical projects ; Responding to behavioral questions ; So, tell me about yourself -- VI. Big O. An analogy ; Time complexity ; Space complexity ; Drop the constraints ; Drop the non-dominant terms ; Multi-part algorithms : add vs. multiply ; Amortized time ; Log N runtimes ; Recursive runtimes ; Examples and exercises -- VII. Technical questions. How to prepare ; What you need to know ; Walking through a problem ; Optimize & Solve Technique # 1 : Look for BUD ; Optimize & Solve Technique #2 : DIY (Do it yourself) ; Optimize & Solve Technique #3 : Simplify and generalize ; Optimize & Solve Technique #4 : Base case and build ; Optimize & Solve Technique #5 : Data structure brainstorm ; Best conceivable runtime (BCR) ; Handling incorrect answers ; When you've heard a question before ; The 'perfect' language for interviews ; What good coding looks like ; Don't give up! -- VIII. The offer and beyond. Handling offers and rejection ; Evaluating the offer ; Negotiation ; On the job -- IX. Interview questions. Data structures: Arrays and strings ; Linked lists ; Stacks and queues ; Trees and graphs ; Concepts and algorithms. Bit manipulation ; Math and logic puzzles ; Object-oriented design ; Recursion and dynamic programming ; System design and scalability ; Sorting and searching ; Testing ; Knowledge based. C and C++ ; Java ; Databases ; Threads and locks ; Additional review problems: Moderate ; Hard -- X. Solutions. Data structures ; Concepts and algorithms ; Knowledge based ; Additional review problems -- XI. Advanced topics. Useful math ; Topological sort ; Dijkstra's algorithm ; Hash table collision resolution ; Rabin-Karp substring search ; AVL trees ; Red-black trees ; MapReduce ; Additional studying -- XII. Code library. HashMapList <T, E> ; TreeNode (Binary search tree) ; LinkedListNode (Linked list) ; Trie & TrieNode -- XIII. Hints. Hints for data structures ; Hints for concepts and algorithms ; Hints for knowledge-based questions ; Hints for assorted review problems -- XIV. About the author

Now in the 6th edition, the book gives you the interview preparation you need to get the top software developer jobs. This is a deeply technical book and focuses on the software engineering skills to ace your interview. The book includes 189 programming interview questions and answers, as well as other advice

Additional Titles