Cracking the Coding Interview

Gayle Laakmann McDowell

出版社

CareerCup

出版时间

2015-07-01

ISBN

9780984782857

评分

★★★★★
书籍介绍
Cracking the Coding Interview, 6th Edition is here to help you through this process, teaching you what you need to know and enabling you to perform at your very best. I've coached and interviewed hundreds of software engineers. The result is this book. Learn how to uncover the hints and hidden details in a question, discover how to break down a problem into manageable chunks, develop techniques to unstick yourself when stuck, learn (or re-learn) core computer science concepts, and practice on 189 interview questions and solutions. These interview questions are real; they are not pulled out of computer science textbooks. They reflect what's truly being asked at the top companies, so that you can be as prepared as possible. WHAT'S INSIDE? 189 programming interview questions, ranging from the basics to the trickiest algorithm problems. A walk-through of how to derive each solution, so that you can learn how to get there yourself. Hints on how to solve each of the 189 questions, just like what you would get in a real interview. Five proven strategies to tackle algorithm questions, so that you can solve questions you haven't seen. Extensive coverage of essential topics, such as big O time, data structures, and core algorithms. A behind the scenes look at how top companies like Google and Facebook hire developers. Techniques to prepare for and ace the soft side of the interview: behavioral questions. For interviewers and companies: details on what makes a good interview question and hiring process.
AI导读
核心看点
  • 涵盖189道真实大厂面试题,还原面试场景
  • 传授拆解问题、优化代码及沟通技巧
  • 提供简历优化、行为面试及薪资谈判指南
适合谁读
  • 准备进入科技行业的求职应届生
  • 希望转行进入编程领域的非科班人员
  • 需要系统梳理算法与面试策略的开发者
读前提醒
  • 切勿死记硬背答案,重在掌握解题思路
  • 需配合LeetCode刷题以巩固算法基础
  • 建议手写代码以模拟真实面试环境
读者共识
  • 面试准备必读经典,被誉为码农圣经
  • 内容详实但需结合刷题实战才有效
  • 对缓解面试焦虑及梳理知识体系有帮助

本导读基于书籍简介、目录、原文摘录、短评和书评生成,不等同于全文精读。

精彩摘录
  • "怎样才算好代码 至此,你也许明白了,许多公司都想找能写出“优美、整洁”代码的人才。但这到底意味着什么,怎样才能在面试中展现出这方面的能力呢?般说来,好代码具备如下特性。 正确:代码应当正确处理所有预期输入 ( expected input)和和非法输入( unexpected inbut 高效:不管是从空间上还是从时间上来衡量,代码都要尽可能地高效运行。所谓的 “高效”不仅是指在极限情况下的渐近效率 ( asymptotic efficiency,大O记法),同时也包括实际运行的效率。也就是说,在计算O时间时,你可以忽略某个常量因子,但在实际环境中,该常量因子可能有很大影响。简洁:代码能写成1"
  • "p17 Remember, your potential future team members need to know that they can rely on you. And they need to know that you won’t need constant supervision and hand-holding. They need to know that you’re able to figure things out on your own. One of the most important messages that you, as a candidate, "
  • "p21-22 Resume screeners look for the same things that interviewers do: »»Are you smart? »»Can you code? Keep in mind that recruiters only spend a fixed amount of time (about 20 seconds) looking at your resume. Employment History »»Relevant Jobs »»Writing Strong Bullets: For each role, try to discuss"
  • "p23-24 I recommend filling in the following “preparation grid” as shown below: We recommend reducing each story to just a couple keywords that you can write in each cell. When asked about your weaknesses, give a real weakness! Remember: you’re not just answering their questions, you’re telling them "
  • "Don’t do that! Memorizing or trying to learn specific questions won’t help you! Rather, do this: 1. Try to solve the problem on your own. 2. Write the code for the algorithm on paper. 3. Type your paper code as-is into a computer. 4. Do a mock interview. Here’s a list of the absolute must-have knowl"
  • "p29 stay light on details and just state the key points. Structure Answers Using S.A.R. Structure your responses using S.A.R.: Situation, Action, Response."
  • "p31-33 one more thing: you’re not done until the interviewer says that you’re done! What I mean here is that when you come up with an algorithm, start thinking about the problems accompanying it. When you write code, start trying to find bugs. Five Steps to a Technical Questions 1. Ask your intervie"
  • "p37 It’s Always Negotiable! think about the long term career. »»Career Path: Make a plan for your career. What do you want to do 5, 10 and 15 years out? What skills will you need to develop? Which company or position will help you get there? »»Promotion Opportunity: Do you prefer to move into manage"
作者简介
Gayle Laakmann McDowell is the founder and CEO of CareerCup and the author of Cracking the PM Interview and Cracking the Tech Career. Her background is in software development. She has worked as a software engineer at Google, Microsoft, and Apple. At Google, she interviewed hundreds of software engineers and evaluated thousands of hiring packets on the hiring committee. She holds a B.S.E. and M.S.E. in computer science from the University of Pennsylvania and an MBA from the Wharton School. She now consults with tech companies to improve their hiring process and with startups to prepare them for acquisition interviews.
用户评论
Naive
cc189走起。。。 读了一部分,现在不找工作了,以后找的时候再接着读吧
原来我当年还没从出版业转行码农的时候就已经读过cc150的初版译稿……
有那么一丢丢用吧,完全不如好好做leetcode。。。
可以给小白(比如不知道什么是hash table, 分不清OOD和system design的)指路,大致了解CS面试知识的基本范畴。题目比较老了,实现用的java,真要练手还是得上leetcode,光看书是不能解决问题的(题目思路过得顺会让我误以为自己是转码天选之人,然而要敲出bug-free code还是有距离)。讲coding之前的几章为面试指导,算值得一读。
很多人推荐的书籍,但是里面的内容这么多年过来有点过时了,题目也都是easy和medium且easy偏多。目前(2021年12月29日00:05:33) 大厂找工还是以medium为主。这本书适合零基础的大一学生看看。真的要好好准备面试的话,应该提前半年到一年,每天至少一题,刷lc前300道+对应大厂tag 100道。
好吧,我又来看一遍Gayle的码农绿本许愿书。
程序员面试入门宝典
想拿外企offer,好好刷这书
经典。
收藏