作者:多多之爱 | 来源:互联网 | 2023-10-12 11:15
《剑指Offer》书评
众所周知,在互联网招聘中,总少不了笔试这一环节。而说到笔试,肯定有一本书会被每一个童鞋提及——那就是《剑指Offer》,在更新了两版后,终于在2021年的夏天这本书也更新了——《剑指Offer》专题突破版。
第一时间拿到这本书后已经开始慢慢阅读起来了。刚好去年也在校招前买了之前的版本,说一下我拿到这本第一感受就是何海涛大佬更用心了。如书名的副标题——专项突破,专题大概可分为两大块:数据结构 + 算法。
可千万别觉得数据结构和算法就此分开了,其实算法的解题套路也是需要一个个数据结构中来打通的,对所有的数据逻辑无外乎CRUD,而算法就是要让我们如何高效的做:增、删、改、查。如果不看书,光靠自己去琢磨,可能就只知道暴力法,一层for不行就两层for。而看书学习就能让我们学会如何巧妙的让自己解题,惊艳面试官。(虽然面试官也知道你可能刷过,他可能就这么过来的~)
数据结构专题
书中从数字和数组再到字符串,跟着书慢慢做题后就会发现其实这三种的解题模式差不多。
当你学会了如何处理字符串和数字之后,可能针对链表的题目又会开始有了些许的思路。重点链表的题需要多刷刷,因为最基本的方法都能在链表题中得到体现,也通常是面试的高频题目(校招亲测)。书中也通过几个常见的链表题向我们展示了如下方法:
- 哨兵节点,或者叫 dummy node
- 双指针
- 快慢指针
- 递归
常见题:删除倒数第k个链表、反转链表、k个一组反转链表、链表是否有环…
针对哈希表,书中告诉我们如何设计它。而我们在学习的时候更应该明白一种语言解决哈希冲突的方式:重点看Java源代码,网上一堆资料。面试常考的LRU在此章也有题。其他更多的我们应该去利用哈希表的特点,所以哈希表的应用就出来了!(LeetCode第1题哈希法,yyds~)
然后就到了介绍了栈、队列。这二者的算法上本质就是链表Plus,接着常见数据结构全出来了:树、图、前缀树集齐了。书把图放在最后一章,可能也真的是笔试过程中很少出现图的题目考察,时间充沛学有余力肯定会,如果真的是突击找工作,图的题目可以暂且一放。至少对校招不会有影响~
算法专题
开始转入算法专题:查找 + 排序 + 回溯 + 动态规划
查找:不就是常见的顺序查找和二分查找,重点掌握二分思想。
排序:计数排序 + 快速排序 + 归并排序
像一些大厂就很喜欢考这些算法中体现的思想,动态规划可能就是在你想要SSP中会出现了,讲到这里,有没有心动了。
总结
经过这么多时间的检验,《剑指Offer》无疑是一本技术人必备之书,让无数人又爱又恨。恨的时候是准备笔试的时候那种望题生叹的无可奈何,爱的是当你在面试过程发现出现了原题,心中已经大呼:海涛大佬yyds!!!一千遍的时候。还要假装自己在思考,才慢慢敲出自己的第一句解题代码。
虽然现在很多算法刷题网站都已经上线了《剑指Offer》的题,但是我还是建议:
-
如果你是正在求职的小伙伴,买一本纸质书来看看海涛大佬在书中文字给我们展现的解题思路。不要说已经有高赞题解了,题解只会给你一个最优答案,为啥会这样最优?最优解怎么逐渐出来的没人会告诉你。
-
如果你也向我一样白嫖了 Online 刷题网站的剑指 Offer中的题,然后找到了工作的话,新版出来了还不入手一本感谢海涛大佬吗!
PS:专线突破版也已经上线了力扣,买本书边看边刷吧,一起食用更佳!真心推荐~