Redian新闻
>
数据结构和算法知识是否真的重要?

数据结构和算法知识是否真的重要?

公众号新闻

前言
在很多程序员看来,数据结构,算法这类的东西感觉没用,在实践中用到的机会也很少,为什么呢?这个问题,我们可以反向来思考,大公司对算法尤其看重的理由是什么?
原因

锻炼程序员的基本功

面算法题能看出一个程序员的基本功, 算法与数据结构是计算机领域最最基础的学科, 计算机领域中更高级的学科或多或少都涉及到算法与数据结构, 说算法与数据结构是计算机其他领域的地基也不过分。而且对于校招的小伙伴来说, 可能并没有丰富的项目经验, 在面试官面前可能就如同一张白纸, 当然是一张很有潜力的白纸。这种情况下, 算法题便是面试的不二选择。算法作为程序员的"内功", 只有内功深厚的人才有潜力在计算机领域有所建树。

多维度考察

面试中问算法题,也是一种多维度的考察, 面试官通过面算法题与面试者的沟通交流, 可以看出面试者的逻辑是否清晰, Debug 能力,编码习惯,能否写出可维护的代码,以及和未来同事沟通的能力等, 总而言之, 算法题能看出一个程序员的专业素养, 如果一个人连最基本的算法都弄不清楚,如何能放心把复杂的真实业务场景交其负责。

准确高效的筛人方式

面算法题也是一种精确高效的筛人方式, 假如现在有两个人来面试, 第一个人框架用得很好, 但算法不扎实, 另外一个人有扎实的算法功底, 但一些框架技术不熟, 如果你是大公司的面试官你会选谁, 答案不言而喻。虽然第二个人并不熟悉某些特定的技术框架, 但我们也有理由相信, 他能迅速学习并胜任工作。况且现在技术更新迭代速度如此快, 只有学习能力强的程序员才能适应时代的发展, 而这样的人往往便是算法功底深的人。
带来的优势重要性
很多程序员随着代码越写越多,渐渐开始觉得算法、数据结构在自己的学习和工作中不那么重要,那是因为你已经掌握了很多算法数据结构,很多时候算法和数据结构,在编程中的帮助,是隐性的,是无声的。算法和数据结构,可能不会在你每一次的编程中起到作用,其基础是否扎实却往往是决定你和普通程序员间区别的地方。

举个例子:

如果面试官问你,你是用过什么框架?

你会说使用过...

之后你谈了下使用这些框架的一些知识和遇到的坑,以及如何解决的?通过这样的问题,其实完全看不出来你的思维和编程能力,只能看出你是会这个东西。而面试算法和数据结构就不一样,他是最容易量化和体现你自身能力的。

很多初学者都不知道数据结构是什么,或是不理解数据结构,自然不能了解它的重要性。其实数据结构这个名字起得非常好,我们可以类比建筑结构去理解:一个工人不需要深入理解建筑结构,只要按照图纸拼好一砖一瓦就能盖楼;而工程师必须非常了解建筑结构,才能设计出稳固而完美的建筑。

再比如汽车结构,驾驶员不需要深入理解汽车结构,只需要知道挂挡、踩油门、踩刹车、转弯就能开好车,而如果要精通汽车,必须非常了解汽车结构。才能完成漂移等高难度动作。

数据结构,顾名思义,就是指数据的结构。编程时会用到各种各样的数据,这些数据如何存放,如何关联,怎样使用才能达到最高的增删改查效率?答案就是优化数据结构。

初学者很少接触到数据结构相关的知识,原因在于初学编程时,接触的数据量还不够大。此时要从表中查询一个字段,只需要遍历一次即可完成。而且查询时间是毫秒级的,非常“快”。然而,遍历一遍数据表的速度其实是很慢的,如果采用遍历查询的方式,当数据量达到百万级,查询一次将消耗十几秒的时间,当数据达到千万级,甚至上亿时,遍历查询的时间是不能忍受的。此时,你就会明白数据结构的重要性。

如何高效的学习

说到了数据结构,那么我们就不得不提算法,通过算法来学习数据机构是非常有效的

算法的学习是有技巧的,因为已知的算法种类有限,将上图列出的几种算法系统的学习一遍,基本就会降低难度。想要系统学习算法,推荐新上架 👉 《7 周算法特训》的系统课程。感兴趣可以尝试去看下~

另外理论不结合实践只是空中楼阁,除了理论学习外,平时可以在力扣上多刷题,练习算法知识。我们推荐的刷题方法是,不要想着“大而全”的每天去把每种题刷一遍,这样频繁的切换思路,容易抓不到重点。

比如:本周只刷二分法相关的题,理解二分法中的“套路”,将其钻研透彻之后,下一周再专门练习动态规划。以这样的方式学习,往往事半功倍。

以下我们罗列一些工作中经常会遇到时的一些算法问题,希望对大家有所帮助。

👉 图


👉 栈-堆栈


👉 深度优先搜索


👉 广度优先搜索

而言之,很多人平时不会用算法和数据结构,在跳槽的时候,也会提前去复习算法和数据结构的知识,因为这是面试中很常见的问题。但我还是建议大家一直有这种能力,不要因为不常用而忽视这些基本的东西,基本的永远是精华。


❤️ 另外宣布一个好消息,本次力扣 2023 春招笔试季开幕啦!

🌟 活动概要:

  • 本次活动名企云集,笔试荟萃,包含多语言技术类(前端/后端/移动端开发/算法/测试)等岗位。

  • 适合参与对象:23/24 届毕业生

简历免筛,直击二面,一发入魂。

👏 通道已开启 - 欢迎大家踊跃报名~ 🎉

(具体详情按各场笔试详情页规则为准)

Tips:想获得企业报名实时消息,关注服务号回复:「开启通知」即可绑定。



BY / 

本文作者:力扣

编辑&版式:Janson

声明:本文归“力扣”版权所有,如需转载请联系。


点个在看,少个 bug

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
室温超导是否真在美国实现了?方案图纸追求好看,真的重要吗?美国自驾游——乔治亚州亚特兰大市 Atlanta Georgia英欧达成历史性协议!北爱问题解决最终方案,它能否真正解决这场英欧争端?2023元宇宙能否真正实现?| 新年99元季度优惠开启!非结构化剪枝算法的巧妙利用:非结构化掩码的后处理Cell Discovery | 张哲课题组与合作者共同揭示EGFR/HER2二聚体的结构和功能特点谁最爱逛Costco、缺德舅、猴父子? 大数据结果竟然跟我想的不一样……超全英语语法知识汇总!开学前必看!二十条优化措施是否意味着放松防控?坚持做核酸有无必要?国务院联防联控机制有关专家权威回应【黄全愈】知识是创造的,还是发现的?从中国往加拿大汇款该不该交税?汇款是收入还是资产?父母赠与是否交税?离岸公司汇款是否交税?非税居民给太太汇款是否交税?如何避税ChatGPT出来后,我们是否真的面临范式转变?预计2022年净利润同比下降50%左右,对第一大客户的销售是否真实?这公司科创板IPOMARKET | 谁最爱逛Costco、缺德舅、猴父子? 大数据结果竟然跟我想的不一样……刘震云:世界上不缺文学的垃圾低温是否真的会损害人体免疫力?研究证实:温度影响抵抗力!AI算法发现3种新纳米结构,研究时间从1个月压缩到6小时临床数据库对于临床科研有多重要?如何利用开放的数据库撰写SCI论文?厉以宁逝世——常识是简单的,但说出它的人并不简单“无尽:当代木结构实践展”:超越材料的建构和美布达佩斯—温泉下棋重要报告中的重要内容为今年的投资指明了方向最后的菜地收获能源危机下,绿色转型能否真正加速?男子退烧第二天就上班,就医时已接近“白肺”!“阳康体检套餐”爆红,有公司半月销售额或上亿!是否真有必要?大降级时代:前年投消费,去年投芯片,今年投简历!“妈妈,你可以不上班一直陪着我吗?”孩子的成长,到底金钱更重要还是陪伴更重要?营养大推荐!身体健康真的重要,美国这些保养大热品,送礼推荐!大规模的化学语言 transformer 模型捕捉分子结构和性质Redis中一个你绝对没用过,但是特别好用性能炸裂的数据结构,分享!俄乌战争已成为“大数据和算法战争”这场全球原油业“顶级饭局”后,共识是“闲置产能所剩无几”了资深教师:很多学校已大幅裁减英语老师!政协委员建议高考外语改为选考,外语是否还重要?谁最爱逛Costco、TJ、猴父子? 大数据结果竟然跟我想的不一样…
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。