非常感谢博客上的读者,是大家的关心、支持和鼓励让我有信心写完这本书并最终出版发行(
china-pub互动网、
亚马逊卓越网、
淘宝网、
京东网、
当当网上有售)。网友们的鼓励让我在
博客上的写作从2007 年2 月开始坚持到了现在。也正是由于网友们的鼓励,我最终下定决心把博客整理成一本书。
本书特点
本书的原型是我过去4 年多陆陆续续发表的 几十篇博客,但这本书也不仅仅是这些博客的总和,它在博客的基础上添加了大量内容。正如出版社编辑在书的封底写的推荐词一样,这本书有如下特点:
(1)面试官的视角
从面试官视角剖析考题构思、现场心理、解题方法优劣与面试心得,尚属首例。
(2)50余道编程题
本书精选谷歌、微软等知名IT企业的50余道与数据结构、算法相关的典型面试题,提供多角度的解题辅导。这些题目现今仍被大量面试官反复采用,实战参考价值颇高。
(3)系统的解题方法
本书系统总结了如何在面试时写出高质量代码,如何优化代码效率,以及分析、解决难题的常用方法。
(4)超写实体验与感悟
Autodesk->微软->思科,作者一路跳槽一路“面”,既亲历被考,也做过考官,更是资深程序员,大量的一线面试与编程经验,足当确保本书品质。
本书内容
全书分为7 章,各章的主要内容如下:
第 1 章介绍面试的流程。通常整个面试过程可以分为电话面试、共享桌面远程面试和现场面试3 个阶段,每一轮面试又可以分为行为面试、技术面试和应聘者提问3 个环节。本章详细讨论了面试中每一环节需要注意的问题。其中第1.3.2 节深入讨论了技术面试中的5 个要素,是全书的大纲,接下来的第2~6 章逐一讨论每个要点。
第 2 章梳理应聘者接受技术面试时需要用到的基础知识。本章从编程语言、数据结构及算法三方面总结了程序员面试的知识点。
第 3 章讨论应聘者在面试时写出高质量代码的3 个要点。通常面试官除了期待应聘者写出的代码能够完成基本的功能之外,还能应对特殊情况并对非法输入进行合理的处理。读完这一章,读者将学会如何从规范性、完整性和鲁棒性3 个方面提高代码的质量。
第 4 章总结在编程面试中解决难题的常用思路。如果在面试过程中遇到复杂的难题,应聘者最好在写代码之前形成清晰的思路。读者在读完这一章之后将学会如何用画图、举例和分解复杂问题3 种思路来解决问题。
第 5 章介绍如何优化代码的时间效率和空间效率。如果一个问题有多种解法,面试官总是期待应聘者能找到最优的解法。读完这一章,读者将学会优化时间效率及空间换时间的常用算法。
第 6 章总结面试中的各项能力。面试官在面试过程中会一直关注应聘者的学习能力和沟通能力。除此之外,有些面试官还喜欢考查应聘者的知识迁移能力、抽象建模能力和发散思维能力。读完这一章,读者将学会如何培养和运用这些能力。
如果朋友们觉得这个博客写得还不错,那么这本书也不会让大家失望。欢迎朋友们关注、阅读这本书。对这本书有任何评论、建议或者意见,都请在博客评论中告诉我,或者在微博上 @何海涛Harry。
再次感谢大家的关注。
本书特点
本书的原型是我过去4 年多陆陆续续发表的 几十篇博客,但这本书也不仅仅是这些博客的总和,它在博客的基础上添加了大量内容。正如出版社编辑在书的封底写的推荐词一样,这本书有如下特点:
(1)面试官的视角
从面试官视角剖析考题构思、现场心理、解题方法优劣与面试心得,尚属首例。
(2)50余道编程题
本书精选谷歌、微软等知名IT企业的50余道与数据结构、算法相关的典型面试题,提供多角度的解题辅导。这些题目现今仍被大量面试官反复采用,实战参考价值颇高。
(3)系统的解题方法
本书系统总结了如何在面试时写出高质量代码,如何优化代码效率,以及分析、解决难题的常用方法。
(4)超写实体验与感悟
Autodesk->微软->思科,作者一路跳槽一路“面”,既亲历被考,也做过考官,更是资深程序员,大量的一线面试与编程经验,足当确保本书品质。
本书内容
全书分为7 章,各章的主要内容如下:
第 1 章介绍面试的流程。通常整个面试过程可以分为电话面试、共享桌面远程面试和现场面试3 个阶段,每一轮面试又可以分为行为面试、技术面试和应聘者提问3 个环节。本章详细讨论了面试中每一环节需要注意的问题。其中第1.3.2 节深入讨论了技术面试中的5 个要素,是全书的大纲,接下来的第2~6 章逐一讨论每个要点。
第 2 章梳理应聘者接受技术面试时需要用到的基础知识。本章从编程语言、数据结构及算法三方面总结了程序员面试的知识点。
第 3 章讨论应聘者在面试时写出高质量代码的3 个要点。通常面试官除了期待应聘者写出的代码能够完成基本的功能之外,还能应对特殊情况并对非法输入进行合理的处理。读完这一章,读者将学会如何从规范性、完整性和鲁棒性3 个方面提高代码的质量。
第 4 章总结在编程面试中解决难题的常用思路。如果在面试过程中遇到复杂的难题,应聘者最好在写代码之前形成清晰的思路。读者在读完这一章之后将学会如何用画图、举例和分解复杂问题3 种思路来解决问题。
第 5 章介绍如何优化代码的时间效率和空间效率。如果一个问题有多种解法,面试官总是期待应聘者能找到最优的解法。读完这一章,读者将学会优化时间效率及空间换时间的常用算法。
第 6 章总结面试中的各项能力。面试官在面试过程中会一直关注应聘者的学习能力和沟通能力。除此之外,有些面试官还喜欢考查应聘者的知识迁移能力、抽象建模能力和发散思维能力。读完这一章,读者将学会如何培养和运用这些能力。
第 7 章是两个面试的案例。在这两个案例中,我们将看到应聘者在面试过程中的哪些举动是不好的行为,而哪些表现又是面试官所期待的行为。衷心地希望应聘者能在面试时少犯甚至不犯错误,完美地表现出自己的综合素质,最终拿到心仪的Offer。
如果朋友们觉得这个博客写得还不错,那么这本书也不会让大家失望。欢迎朋友们关注、阅读这本书。对这本书有任何评论、建议或者意见,都请在博客评论中告诉我,或者在微博上 @何海涛Harry。
再次感谢大家的关注。