审核中~
溜忙之道
首页
溜忙手册
offer之道
项目Git
写文章
登录
·
注册
登录
没有账号,去注册
注册
已有账号,去登录
博客
关于算法
南易_站长
阅读量:3975
关注
关于算法
### 关于算法 为什么把算法摆在第一点,因为算法在我看来这是大部分没有面试过大厂的朋友可能会忽视的一方面。它的重要程度不比专业知识的考究来的低。 在1-2小时内,如何能快速的看到你编码水平和思维就看这些算法的考究。 因此需要对常见的数据结构比较熟悉,如链表,树,栈,堆。需要知道遇到数组相关的题型可能需要用到如快慢指针等解题思路。还有广度深度优先算法。最后,如果还有更难一点的,会涉及到回溯,动态规划等解题思路。 前面几点都比较好处理,只要在leetcode上做到一定量的题目,都能反应过来。我本人认为我并非是聪明的人,做了300快400道题也仅仅只是摸索出了一些大致的套路。我是完全比不了那些做了100+道题就能灵活掌握算法的大神。 但是经过了系统性的训练,遇到一些常见的算法解题思路可以快速的反应过来。 而动态规划相关的问题,我看来是最难的。关键是需要判断题目是否可以分解成小问题且小问题之间不能互相影响,接着找到动态规划方程,或者是状态转移表。 **在听到面试官的算法题后,先不要急着下笔。最好在下笔之前和面试官聊聊你的思路。不同面试官的要求不同,有的面试官,希望算法是原地算法,有的面试官希望时间复杂度降低,有的希望空间复杂度降低。** 最好能清晰的表达你的初步思路后,面试官会知道你的算法的方向是否正确,可以一定程度上给予你方向上的指引。 **记住就算你做过原题,除非你的方案能保证是从空间和时间复杂度是最优,不然我还是建议面试者多和面试官交流。在交流的过程中,面试官也能明白你的思考过程,从而判断你这个人的编程能力如何。** 千万不要小看这个模块的考究,如果说面试专业知识是100分,那么算法题可以占据50分。如果你写不出,或者思路完全偏离了,那就可以说再见了。 在我写文章学习的这5年里面,也有不少的朋友问我的意向,其中不乏有大厂。然而我深知我的算法水平确实不太行,学习的源码水平还不足,很多时候都婉拒了。也就今年和去年,练习算法已有近2个年头,才敢出山试试。 就算是这样的我,算法上的能力评价还是不高,只能说是达到了大厂的合格线,还需要继续加强。 ### 最后,再给两点建议: >* 一个人光看不练是不行的,一个人瞎琢磨效率偏低。 >* 最好可以买几本书或者课程指导。我是看了辉哥的课程,阅读了极客时间的刘超的数据结构,还阅读了书籍算法4。把基础都补充好后,可以去leetcode中对每一个数据结构专项进行训练。在这些基础上,在做一做剑指offer中经典题目也就差不多了。 作者:yjy239 链接:https://juejin.cn/post/6964265569889550349 来源:稀土掘金 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
评论
表情
发送
0
评论