元数据
剑指Offer
- 书名: 剑指Offer
- 作者: 何海涛著
- 简介: 本书剖析了50个典型的程序员面试题。全书分为7章,主要包括面试的流程,讨论面试流程中每一环节需要注意的问题;面试需要的基础知识,从编程语言、数据结构及算法三方面总结了程序员面试的知识点;高质量的代码,讨论影响代码质量的的3个要素;解决面试题的思路,总结在编程面试中解决难题的常用思路;面试中的各种能力,本章总结应聘者在面试过程中如何表现学习能力和沟通能力;两个面试案例,这两个案例总结了应聘者在面试过程中哪些举动是不好的行为,而哪些表现又是面试官所期待的行为。
- 出版时间 2012-01-01 00:00:00
- ISBN: 9787121148750
- 分类: 计算机-编程设计
- 出版社: 电子工业出版社
- PC地址:https://weread.qq.com/web/reader/1f132a805a61751f1674656
高亮划线
版权信息
📌 书名:剑指Offer 作者:何海涛 出版社:电子工业出版社 出版时间:2012-01 ISBN:9787121148750 本书由电子工业出版社授权上海阅文信息技术有限公司进行制作与发行 版权所有·侵权必究 ⏱ 2022-07-07 19:47:17
1.2 面试的三种形式
📌 因为在没有形成清晰的思路之前写出的代码通常会漏洞百出。 ⏱ 2019-09-11 19:43:39
📌 测试在前、开发在后 ⏱ 2019-09-11 19:44:14
📌 熟练地设置断点、单步跟踪、查看内存、分析调用栈,能很快发现问题的根源并最终解决问题, ⏱ 2019-09-11 19:44:54
📌 调试能力是在书本上学不到的,只有通过大量的软件开发实践才能积累出调试技巧 ⏱ 2019-09-11 19:44:58
📌 准备几个问题。每一轮面试的最后,面试官都会让应聘者问几个问题,应聘者可以提前准备好问题。 ⏱ 2019-09-11 19:45:29
1.2.1 电话面试
📌 建议用如图1.3所示的STAR模型描述自己经历过的每一个项目。  图1.3 简历中描述项目的STAR模型 ⏱ 2019-09-11 19:46:09
📌 应聘者不必详述项目的背景,而要突出介绍自己完成的工作及取得的成绩。 ⏱ 2019-09-11 19:47:08
📌 简历中我们描述技能的掌握程度大部分应该是“熟悉”。如果我们在实际项目中使用某一项技术已经有较长的时间,通过查阅相关的文档可以独立解决大部分问题,我们就熟悉它了。 ⏱ 2019-09-11 19:47:47
📌 应聘者不要试图在简历中把自己修饰成“高人”而轻易使用“精通”,除非自己能够很轻松地回答这个领域里的绝大多数问题,否则就会适得其反。 ⏱ 2019-09-11 19:48:10
📌 通常基本功在编程面试环节体现在3个方面:编程语言、数据结构和算法。 ⏱ 2019-09-11 19:50:39
📌 重点掌握二分查找、归并排序和快速排序, ⏱ 2019-09-11 19:50:47
📌 技术面试的面试官一般都是程序员,程序员通常没有那么多想法,他们只认一个理:题目做对、做完整了,就让你通过面试;否则失败。所以遇到简单题目却被拒的情况,应聘者应认真反思在思路或者代码中存在哪些漏洞。 ⏱ 2019-09-11 19:51:31
📌 还有一个面试官不能容忍的错误就是程序不够鲁棒。以前面的那段代码为例,只要输入一个空指针,程序立即崩溃。 ⏱ 2019-09-11 19:52:51
📌 因此当面试官看到代码中对空指针没有判断并加以特殊处理的时候,通常他连往下看的兴趣都没有。 ⏱ 2019-09-11 19:52:56
📌 要想很好地解决前面的问题,最好的办法是在动手写代码之后想好测试用例。 ⏱ 2019-09-11 19:53:54
📌 面试官除了希望应聘者的代码能够完成基本的功能之外,还会关注应聘者是否考虑了边界条件、特殊输入(比如 NULL 指针,空字符串等)及错误处理 ⏱ 2019-09-11 19:54:18
📌 当我们一眼看不出问题中隐藏的规律的时候,可以试着用一两个具体的例子模拟操作的过程,这样说不定就能通过具体的例子找到抽象的规律。 ⏱ 2019-09-11 19:55:50
📌 我们不妨先画出一两个具体的二叉搜索树,直观地感受二叉搜索树和排序的双向链表有哪些联系。 ⏱ 2019-09-11 19:56:33
📌 要想优化时间或者空间效率,首先要知道如何分析效率 ⏱ 2019-09-11 19:57:22
📌 要想优化代码的效率,我们还要熟知各种数据结构的优缺点,并能选择合适的数据结构解决问题。 ⏱ 2019-09-11 19:58:10
📌 想优化代码的效率,我们也要熟练掌握常用的算法。面试中最常用的算法是查找和排序。 ⏱ 2019-09-11 19:58:38
📌 排序算法除了能够给数组排序之外,还能用来解决其他问题。 ⏱ 2019-09-11 19:58:46
📌 还需要展示自己的软技能(Soft Skills),诸如自己的沟通能力和学习能力。 ⏱ 2019-09-11 19:58:58
📌 知识迁移能力是一种特殊的学习能力。 ⏱ 2019-09-11 19:59:27
📌 用位运算实现整数的加法。 ⏱ 2019-09-11 20:00:28
1.3 面试的三个环节
📌 因此总的说来,应聘者不管去什么公司求职,都应该在一定程度上掌握C++。 ⏱ 2019-09-11 20:08:01
📌 由于是传值参数,我们把形参复制到实参会调用复制构造函数。 ⏱ 2019-09-11 20:11:19
📌 就是把传值参数改成常量引用。 ⏱ 2019-09-11 20:13:48
📌 很多考查 C++语法的代码题围绕在构造函数、析构函数及运算符重载。 ⏱ 2019-09-11 20:14:22
1.4 本章小结
📌 最后推荐问的问题是与招聘的职位或者项目相关的问题。 ⏱ 2019-09-11 20:01:31
读书笔记
2.2.1 C++
划线评论
📌 因此总的说来,应聘者不管去什么公司求职,都应该在一定程度上掌握C++。 ^8292450-7bj6zfFWN - 💭 鲨了我吧。 - ⏱ 2019-09-11 20:08:41