资讯首页 新闻资讯 云计算测评 云服务商动态 技术频道
上云无忧 > 云计算资讯  > 技术频道 > 进大厂的那道坎儿--数据结构与算法,到底该怎么迈过去?

进大厂的那道坎儿--数据结构与算法,到底该怎么迈过去?

发布时间: 2020-05-18 08:46:31|浏览量:329| 评论: 0

上大学时,计算机系里流传着这样一句话,我想你也一定听过:

 

“如果计算机系只开一门课,那一定是:数据结构与算法。”

 

说数据结构与算法是计算机编程领域的基石,毫不夸张。数据结构与算法的应用无处不在:图像视频处理、数据库、游戏开发、编译器、搜索引擎、AR、VR、人工智能、区块链等领域,都需要扎实的数据结构算法功底。

 

但是,学好数据结构与算法,似乎也不是一件容易事儿。数据结构与算法复杂、深奥、难以理解,非常考验一个人的编程功底和长期积累,真的是令人又爱又恨。也正是因为这一点,数据结构与算法成为了大厂筛选人才的必备面试题。

 

 

数据结构与算法,让多少英雄“折腰”,遭遇面试滑铁卢。2015 年,开发了 Mac 平台的安装包管理工具--Homebrew 的作者被 Google 拒绝事件,在当时可是轰动一时,引发了不少热议的。

 

而他被拒绝的原因,正如 Google 的回应:“我们 90% 的工程师都在使用你写的 Homebrew 工具,你却不能白板编程一个二叉树的翻转,所以请滚蛋吧”。

 

大神也折在了数据结构与算法上,活生生的例子在告诉你:要想进入诸如 Google 这样的更大的公司,你必学迈过数据结构与算法这道坎儿。

 

想迈过这道坎儿,难吗?说难,也的确难;说不难,其实也是有方法可循的。我跟一位入行算法多年、同时也身为中科院博士的朋友深入讨论了这个课题。


这位朋友,不仅是中科院博士,更是资深算法专家。也是国内首批从事机器学习和数据挖掘工程师,深厚的一线代码开发经验,对数据结构、算法思想有很深刻的见解。

 

我整理了一下,朋友总结的入行十年,突破数据结构与算法的学习方法,大家可以参考一下:

 

一、强化记忆,夯实基础

 

对数据结构的基础知识扎实之后,才能灵活选用合适的数据结构。所以,记忆这一关不能偷懒,一定要攻克。比如,被问到“堆栈”,“平衡二叉树”,要能够清楚表述出来。毕竟有 Homebrew 作者的前车之鉴!

 

二、梳理逻辑,化劣为优

 

这部分便是上升一个层次的要求了,学习仅凭死记硬背花蛮力是走不远的,还要“灵”与“巧”。把“烂”代码优化为高效率的代码,优化方法框架。一些巧妙方法可以不改变数据的组织方式,便计算出代码复杂度。

 

这部分凭自己领悟的确有些难度,最好还是有大佬来指点。所以,我也请这位中科院的大佬朋友把其中奥妙一一总结出来了,想探知奥妙的朋友可以进一步学习。

 

三、刻意练习,百战百胜

 

想突破,刷题是不能少的。但是,刷题不能盲目,没有方向的乱刷都是在做无用功。有道是“知己知彼,百战不殆”,大厂面试题的套路若是被你摸出来了,那么他出什么新题也都是万变不离其宗,你可以得心应手地从容应答。

 

所以,你一定要刷 BAT 高频面试真题,深入剖析高频真题的解题方法和思路。没有全部的 BAT 高频面试真题怎么办?哎,我只好帮人帮到底啦!求着我那中科院朋友动用他的人脉总结出来了。题有了,想不想学,看你自己啦~

 

四、了解套路,一一避雷

 

我朋友另外提醒大家,大厂面试看的是综合素质。你必须在面试里体现出综合能力。首先言语表达要过关,不能生涩害羞,“肚里有货倒不出来”。然后,关于现场手写代码、问题分析等必备考察环节,也要做到得心应手。

 

当然,面试软素质这部分,如果你心里没底,建议跟我朋友来学习一下,手把手教你如何在大厂面试现场完美发挥。

 


这些总结希望对你有所帮助。在数据结构的路上,我们都是勇敢的攀登者。如果你想针对以上几点,进行更加系统深入的学习,我可以分享给你,我朋友的专栏。

更多【技术频道】相关文章

有话要说

全部评论

暂无评论
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部