前 Facebook 工程师:不要再用你认为正确的方式学算法了!

IT 行业里,新技术、新框架层出不穷。最近两年,我深刻的感受到技术人们学习和成长的步伐不断加快,追随“变化多端”的新技术时,越来越多的技术人们,开始注重那些“永恒不变”的底层知识的积累。

众所周知,“不变”的底层知识中,数据结构与算法是所有技术人都要跨过的坎。它不仅是技术人进入 Google、Amazon 以及 BAT 这些国内外一流的互联网公司的敲门砖,也决定了一个技术人的成长高度和学习速度。我想每一位对自己技术生涯有规划、有目标的技术人,都已经把“攻克算法”作为自己学习道路的重要目标。

然而,很多同学反馈说,知道算法对技术人面试、职业生涯至关重要,也非常希望能够迈过这个坎儿,但总是会遇到许多问题:

  • 基础薄弱,自学不成体系、不得要领,刷过的题目依然会忘记;

  • 学习过程中没人给反馈,学习效果难以评估;

  • 无法将理论和实际相结合,对工作帮助有限;

  • 畏难情绪严重,尤其面对动态结构这种“老大难”,缺乏信心,难以坚持。

今天,我想跟你聊聊到底应该如何学习数据结构与算法。

算法学习的常见误区

我在 Facebook 期间面试了数百位的技术人,回国创业后更是接触了不少希望从事算法岗位的工程师,去年在极客时间推出了《算法面试通关 40 讲》视频专栏,今年又跟极客时间联手出品了两期“算法训练营”,在接触了近 20000 名希望攻克算法的技术人后,我发现很多人对算法学习都存在误区。

总结了常见的算法学习误区,我想跟你说的是:

  1. 知道分子 ≠ 专业和熟练。很多初学者的状态都是这样的:好像看得懂,但不知道如何运用。你要明白,知道这个数据结构和理解这个算法,到运用之间是有非常大的鸿沟的。如何跨过这个鸿沟?第一是刻意练习,第二是用正确的方式刻意练习。

  2. 熟知所有知识点 ≠ 建立知识体系。熟知所有知识点固然没错,但是如果不能把这些知识点串联成线,形成自己的知识体系,那么这些零散的知识点也会随着时间的推移被逐渐忘掉。所以,一定要提醒自己,在看知识点的时候,应该把所有知识点串起来,找到它们之间的联系。

  3. 有深度 ≠ 有效果。我见过身边不少的初学者,一开始就去看厚厚的算法书,然而不少人一本《算法导论》拿起又放下,直到现在还是只了解一些初级算法,关键原理一问就懵,更别说搞定那些千奇百怪的算法面试题了。其实对于算法基础薄弱的人来说,更重要的是找到最适合自己、最优质的学习源头。

  4. 会一种解法 ≠ 真正学会。有的技术人学习了一段时间算法之后,知道能够用某种解法解出某类题目。然而,算法的另一层精髓在于,你需要考虑哪一种解法才是最快速有效的。因此,一定要提醒自己,将各种解法都尝试一下,并比较不同解法的优缺点,这里所说的优缺点主要就是时间复杂度和空间复杂度。

为了帮助大家走出算法学习的误区,克服畏难心理,彻底学透数据结构与算法。继前两期算法训练营后,我跟极客时间共同推出了全新的算法训练营第 4 期,重新打磨和设计了课程,内容从低到高,由浅入深,从链表、数组讲到动态规划、并查集、字典树、红黑树和 AVL 树、位运算、布隆过滤器和 LRU Cache等。

我是谁?

我是覃超,我从美国顶尖学府卡内基梅隆大学计算机专业毕业后,直接加入了Facebook。我在 Facebook 的 3 年时间里,作为 Facebook Messenger Tech Lead,参与了 Facebook App、Facebook Messenger、Facebook Phone 等产品的研发工作。另外,我面试过数百位技术人,对于算法面试的考察点和解题方式有丰富的第一手经验。

放眼网上现有的算法培训课程,有的经常会出现知识点覆盖不足、研究性内容过多或只关注面试算法的问题。因此,我希望通过算法训练营,综合的帮你建立起完整的算法知识体系,理清数据结构之间的关系,同时通过正确的学习方法,快速掌握常见算法题的解法,并能够跟实战结合起来。

我会如何带你攻克算法难关?

1.通过完备的课程体系,帮你建立算法学习的全景图

不同于我的视频专栏以算法面试题目讲解为主,算法训练营不仅涵盖面试题精讲,还会带你建立完整的算法知识体系,详细讲解常见的数据结构和算法的理论知识,以及算法在实际工程上的应用,一次性将数据结构和算法的方方面面讲透。

2.通过有计划的学习机制,让你进行有跟踪、有反馈的闭环学习

不仅只是观看课程视频,我会在每节课后给你精选练习题,并通过期中、期末考试让你自查成果,接收到实际学习反馈。每个阶段我也会根据大家的学习情况,进行重点、难点的直播讲解。班主任和我们的教研组将倾力提供全方位线上学习服务,包括助教答疑、作业、线上讨论、线下社交等。

3.通过建立班级组织,让你跟优秀的伙伴一起学习

你不会是独立学习的个体,你会在一个班级中、一个小组中,跟优秀的同学共同克服难关。班主任会组织大家进行线上分享和讨论,也会有班长、学习委员组织大家进行线下的社交,从这些集体活动中,你会吸收到很多同班同学输出的优质内容和学习方法。

4.通过大厂内推,给你带来更多职业发展机会

优秀毕业生毕业一年内,随时可获得极客大学提供的两次一线互联网大厂内推服务,更有 TGO 鲲鹏会的 600 家企业推荐通道为你敞开,获得更多的职业发展机会。

本期算法训练营包含 8 周线上视频学习 + 3 次讲师直播 + 全方位学习服务,帮助不同基础的软件工程师精进算法能力、构建知识体系。详细课程大纲如下:

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

上下滑动查看课程大纲

如何报名?

  1. 通过底部“阅读原文”链接,即可进入页面,立即报名。

640?wx_fmt=jpeg

  1. 扫描下方图片二维码,添加学习顾问可咨询详情,还可免费获取算法训练营的内部学习资料。

640?wx_fmt=jpeg

最后,来看看往期学员是如何在算法训练营成长的:

640?wx_fmt=gif

640?wx_fmt=gif

640?wx_fmt=gif

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值