为什么大厂非得考数据结构和算法?
Posted CodeSheep
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么大厂非得考数据结构和算法?相关的知识,希望对你有一定的参考价值。
之前有个小伙伴说他坚持刷题2个月,终于去了他梦寐以求的大厂,薪资涨幅非常可观,期间面字节跳动还遇到了算法原题...并表示目前国内的大厂和一些独角兽,已经越来越效仿硅谷公司的做法,通过面试给定题编程,来考察数据结构和算法的扎实程度。
众所周知,算法确实对于程序员来说越来越重要了,之前认识不少履历普通的,通过刷题改变了自己进入大厂的轨迹。
我们都知道很多大厂技术面试的要求是:技术要好,计算机基础扎实,熟练掌握算法和数据结构,语言不重要,熟练度很重要。每一轮技术面试都可能考代码,不只考算法,但一定会考算法。
那你知道为什么要考算法么?其实核心是看候选人是不是足够聪明。考算法一般会分两步,第一步是直接让你说思路,第二步是让你直接上手写代码。很多大厂的算法题一般对应的是 LeetCode 中级模式,要通过面试,你肯定得花时间好好准备。
所以说算法是其中必要的一个环节!然而在我看来,这已经是相对来说比较公平的方式了。从项目来说,每位程序员做的差异非常大,很难通过你以往的项目经验判断出你的真正潜力。但是对于算法来说,大家起点都一样,这就像高考,通过考核算法题是可以看出你的编程内功是否深厚的,而且还能多维度考察你的其他能力,比如:逻辑思维清晰与否、debug 能力如何、编码习惯怎样、是否能写出可维护的代码等等。并且算法根基不扎实,不仅难过面试,对于代码性能的提升、编程语言的驾驭也会比别人弱很多。因此,现在算法基础不牢固的同学,都很难通过大厂的面试。但是只靠刷题去提升算法能力,进度太慢,而且还容易抓不住重点。
那么,作为一名程序员,该怎么学好算法呢?
埋头看书 OR 视频自学?
因为算法知识点繁多,企业考察的题目千变万化,并且还会跟实际业务相结合。自学的话,没人监督比较难坚持,并且没有完整的学习体系,也没人指导,导致最后的结果就怕一知半解,浪费了大量的时间成本。
其实算法学习也是有方法的,如果想要学好,必须要掌握正确的学习方法,建立自己的算法知识体系。极客时间的算法训练营正好有个体验课的活动,这里推荐给大家:讲师是前 Facebook 多年面试官覃超,会用 7 天带你掌握算法面试必考知识点,手把手带你了解企业的需求并接触到真实项目经验。建议算法根基不太稳的同学,仔细了解一下。
还有,让我们真诚推荐这个体验课的是,即便是这么一个体验课,也安排了全方位的学习服务。
-
覃超老师从 LeetCode 海量题库中,精选 30 道 BAT 等大厂面试高频特色算法题 -
来自一线互联网企业的助教老师每天在群内为你答疑 -
配备专属班主任 全程带班,打造高效学习社群,收获学习伙伴 -
每晚社群内活动:1次讲师直播答疑+班班加餐 + 助教小课堂,传递给你高效的学习方式和最精华的知识点总结
-
基础应用:7 种常用时间复杂度分析 -
编程训练:6 种常见数据结构的实现原理和特性 -
项目实战:高频热门大厂面试真题解题思路剖析 -
夯实内功:提升快速掌握新技能的能力
以上是关于为什么大厂非得考数据结构和算法?的主要内容,如果未能解决你的问题,请参考以下文章
剑指offer!阿里内部大佬甩出的Java算法上分宝典,果不其然借此成功拿到三家大厂offer