代码之外:谈谈算法该怎么准备,不准备可以吗
目录
算法是门槛,你怎么都无法逃避
那么该如何准备算法题呢
要有敢于试错的决定,大家都没有绝对准备充分的时候
可以随时跟身边的人互相探讨,高手解题可能就不一样
刷题可能会忘记,所以找工作期间还是要保持那种刷题感觉
对自己的定位要准确,别把要求定的很高
好的算法相关项目
好的算法视频
比较好的算法面试书籍
首先皮一下,不准备算法肯定是不行的。
算法是门槛,你怎么都无法逃避
我的导师说过:面试能力强的人,开发能力不一定强。
化用一下:算法能力强的人,开发能力不一定强。但算法没有,证明你开发能力的基本项就缺失了。
每年大厂收到那么多简历,没有办法只能通过设置一些门槛来筛选相对优秀的人:比如算法、采取多轮面试。
从小到大,好像不管什么事情,涉及到选拔,考试总是一道避不开的关。中考、高考、考研、面试…
所以大家也没必要去纠结了,看那些拿了大厂 offer 的经验贴,谁没有说自己面试过程中遇到几个算法题呢。
那么该如何准备算法题呢
首推《剑指 offer 》,其实我觉得书大可不必买,Leetcode 和牛客都有专门的题库,一定要照着刷,总共 67 道题。太多公司懒着出题就会直接从这上面出原题了。
就算不是原题,也会是那种用类似思想可以解决的问题。当然,如果前期做不出来,一定要硬着头皮坚持下去。
因为这种刷题思维如果不接触、不训练,真的很没有头绪,网上有太多的刷题大佬把自己的方法公开了,我这种菜鸡就不说方法了。
跟大家聊聊心态就好了,后面推荐一些比较好的针对算法的刷题笔记。
要有敢于试错的决定,大家都没有绝对准备充分的时候
我相信大家很多跟我一样的想法,都是觉得自己还没准备好,然后不敢投简历,总觉得要 Leetcode 刷完 200 + 道题后,才有把握。
我的建议是如果真的春招秋招已经来了,就不用说等自己准备好了再去投,做好简历就再笔试过程中不断学习总结,一道道题的学。
在真正的大厂题目碾压下的学习状态真的比自学好,因为很可能自己刷题过程中拿到题看了不到 3 分钟就想看题解,上网搜答案。
这种方式很难让自己大脑的思考,更不用说能把题做回。
可以随时跟身边的人互相探讨,高手解题可能就不一样
还记得在以前背文言文,背生物地理的时候吗?大家都是互相考,互相背,这种状态真的很好,也很怀念。
为什么大家越长大反而丢失了这种状态,越不敢跟别人探讨交流了呢?反而把找工作当作成自己单独的事情,找不到实习变成一件羞于跟别人说的事情。
我个人的经历告诉我,有个可以交流的人真的能给你莫大的帮助,那种无形当中能帮你提升许多。
映射到算法,在刷题的过程中,如果你遇到好的题目,你就可以跟同样找技术岗位的同学互相探讨交流,这样才能检验自己是否真的掌握了。
遇到不理解的,遇到难题,也可以互相交流,可能真的别人就能帮助你不少。
其实你在每一个高分题解下留言点赞,也是一种跟高手交流的机会,为什么那种题解的解题方法会得到大家的认可。
刷题可能会忘记,所以找工作期间还是要保持那种刷题感觉
在秋招的时候,那会一直保持着每天一题的状态,每次面试前都会复习一下面试知识点。
签完三方后,在学校写论文玩耍三个月后,都不敢在春招中投简历了,可能曾经拿过简历的公司都不一定能进面试了。
所以这就是我说的要保持刷题的状态,要经常复习,你虽然做过的题,不经常回顾可能就真的面试遇到原题也不会了。
刷题要循序渐进,一个专题一个专题的刷。
举个例子,比如从数组、链表这样的专题刷完后,可能你就能对队列和栈游刃有余了,因为后者基于前者实现。
对那些算法比如二分法、双指针等等,学会之后就像打通了任督二脉。
对自己的定位要准确,别把要求定的很高
千万不要以为校招中,人均大厂、人均 SSP。如果你只想拿一个还不错的 Offer,刷高频题就行了,别拿那么多题来让自己受罪。
多刷题还不如把项目吃透,而且说实话,个人觉得项目的实现比算法更让我觉得有意思一点。
如果想拿中厂,能应付简单题就行;想拿大厂,做到中等难度也不错了;难题?有时间有兴趣再刷吧,我猜 SP 大佬也不是光靠刷题拿到的吧。
所以我建议还是要好好对自己,找准定位太重要了。如果你刷题不够,你把项目做好,展现项目中的亮点,肯定也拿的到 Offer 的。
再说了,千里马常有,而伯乐不常有。
面试这种事可能有时候就是运气 + 实力的结合,比如这个部门把你批的一无是处,另外一个团队对你赞誉有加。
反正我们最关键的是把自己的定位找准,别把要求定的太高,硬要大厂硬要比别人薪资高…
比如我就很明白,我是双非硕,可能在提前批中那么多优秀的大佬面前,技术没那么强劲的情况下,优势几乎无。就算我能做出算法,项目面试也聊的很开,但是就是进不了后续的面试,就是拿不到 offer。
拿我的经历来说吧,当初虎牙 7 月份投的简历,也过了算法,就是没进面试,后续到 8 月份才邀请我进面试,而且自我感觉一面感觉良好,但是还是被晾着,后续给了感谢信。
海康卫视和 TT 语音也是如此,8 月份投简历,做完算法。等到 9 月份进面试,一直拖到 10 月份才有后续的流程,最后也是给了 Offer。
所以我觉得如果大家在投实习或者提前批的时候,千万不要着急吧。
现在内卷这么严重,好好准备自己的事情。把找工作和刷算法当作长期的战斗,一定会赢得最后的胜利,甚至可能有很多的惊喜。
最后给大家推荐一些我觉得还不错的跟算法相关的书和视频吧。希望能对你有用~
好的算法相关项目
力扣加加-努力做西湖区最好的算法题解
LeetCode Cookbook
fucking-algorithm
好的算法视频
liuyubobobo 老师的《玩转算法面试 从真题到思维全面提升算法思维》
B 站 up 主 花花酱的视频
比较好的算法面试书籍
《剑指 offer》,配套题库
左神的《程序员代码面试指南:IT 名企算法与数据结构题目最优解》(第 2 版),配套题库
《程序员面试金典(第 6 版)》,有配套题库
再推荐一个外国书籍《Elements of Programming Interviews In Java》,我觉得外国人写书真的有一套,这一本也是入门看得很舒服的书。也有 Python 版本,选择其中一本看就好了。
版权声明: 本文为 InfoQ 作者【宇宙之一粟】的原创文章。
原文链接:【http://xie.infoq.cn/article/37e0474f45481531df4425e10】。文章转载请联系作者。
评论