首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >除了应付面试,程序员为什么要学习数据结构与算法

除了应付面试,程序员为什么要学习数据结构与算法

原创
作者头像
HoneyMoose
修改于 2021-02-01 03:05:10
修改于 2021-02-01 03:05:10
2770
举报
文章被收录于专栏:CWIKIUSCWIKIUS

数据结构和算法是计算机处理信息的基础。

抛开所有的东西都不看的话,计算机做的事情就是存储,然后计算。数据结构解决存储的问题,一些算法解决计算的问题,所以程序员必须要了解必须使用数据结构和算法。

比如 Java 中的集合,链表,变量定义都是解决存储的问题,这个存储的定义不是硬件中的存储,而是存储在内存中的数据结构。

你的方法也好,算法也好,必须要拿到数据才能计算,怎么算,这个就是算法。

举个最简单的栗子,读取 CSV 文件,存入到数据库中。抽象来说就是先把 CSV 文件读取到内存中,存好。存成什么样的?你可以存为字符串,也可以进一步存为 List,也可以是 Set。

拿到这个数据后,再进行计算,有可能是去重,分组,遍历等等。这些就是算法了。

不仅仅是应付面试,程序员也好,技术研究也好,数据结构和算法是基础。这 2 样最好是需要比较熟练的掌握,哪怕是不能马上找到解决方案,至少能提供一个思路。

这个对取得面试成功会是个加分项。

https://www.ossez.com/t/topic/13252

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
点进来看看,为什么要学习【数据结构与算法】? 该如何学习?
【数据结构与算法】应该是大学计算机专业必修的一门课,为什么这门课会被列入到必修课的行列当中呢?因为对于每一个程序员来说,在以后的工作中不免要面对一些复杂的业务逻辑,同时要写对应的代码来实现这个复杂的业务。当然了,有很多种方式都可以实现同一个业务逻辑,但每种方式的代码运行效率可能不一样,我们接下来通过一个简单的例子感受一下。
@零一
2021/01/29
4330
点进来看看,为什么要学习【数据结构与算法】? 该如何学习?
数据结构与算法 之三 算法的力量
算法是计算机科学领域最重要的基石之一,但却受到了国内一些程序员的冷落。许多学生看到一些公司在招聘时要求的编程语言五花八门就产生了一种误解,认为学计算机就是学各种编程语言,或者认为,学习最新的语言、技术、标准就是最好的铺路方法。其实大家都被这些公司误导了。编程语言虽然该学,但是学习计算机算法和理论更重要,因为计算机算法和理论更重要,因为计算机语言和开发平台日新月异,但万变不离其宗的是那些算法和理论,例如数据结构、算法、编译原理、计算机体系结构、关系型数据库原理等等。在"开复学生网"上,有位同学生动地把这些基础课程比拟为"内功",把新的语言、技术、标准比拟为"外功"。整天赶时髦的人最后只懂得招式,没有功力,是不可能成为高手的。
张哥编程
2024/12/17
1100
怎么看待程序员普遍缺乏数据结构和算法的知识?
在很多程序员看来,数据结构,算法这一类的东西感觉没用,在实践中都不常用,所以都会很忽视这类内容,但是在很多公司看来,尤其是大公司看来数据结构和算法这种东西确实最有用,而且经常在笔试和面试中出现。为什么会这样呢?
非著名程序员
2018/07/30
5170
怎么看待程序员普遍缺乏数据结构和算法的知识?
收藏 | 应对程序员面试,你必须知道的8大数据结构
瑞士计算机科学家Niklaus Wirth在1976年写了一本书,名为《算法+数据结构=编程》。
数据派THU
2018/09/17
1.1K0
收藏 | 应对程序员面试,你必须知道的8大数据结构
Google工程师:如何看待程序员普遍缺乏数据结构和算法知识?
有人说,算法,先于计算机存在于世,比编程语言本身更为重要,语言只是工具,而算法才是灵魂。而程序就等于算法加数据结构。足以可见,想要在编程之路上走的更长远,数据结构与算法就是必须要掌握的基本功。
我的小碗汤
2018/10/18
1.3K0
Google工程师:如何看待程序员普遍缺乏数据结构和算法知识?
一位 Google 程序员的算法学习之路
来源 | zh.lucida.me/blog/on-learning-algorithms/
五分钟学算法
2019/08/01
1.1K0
一位 Google 程序员的算法学习之路
程序员必须知道的7种数据结构
数据结构是计算机中用于组织和存储数据的一种方式,其目的是为了提高相关数据操作的效率。在几乎所有的程序或软件系统中都会用到数据结构。而且数据结构也是计算机科学和软件工程的基础。同时在面试时也是一个必考的知识点。因此,作为开发人员,必须要掌握数据结构相关的知识。
Go学堂
2023/01/31
1.1K0
左程云:程序员该如何学习算法?
大家好,我是左程云。我本科就读于华中科技大学、硕士毕业于在芝加哥大学。先后在IBM、百度、GrowingIO和亚马逊工作,是一个刷题7年的算法爱好者,也是牛客网的老师。2014年起专职做程序员算法和数据结构培训,代码面试培训,刷题交流等相关工作。 我是《程序员代码面试指南--IT名企算法与数据结构题目最优解》的作者 ,书籍涉及算法与数据结构编程题目240道以上,并且个人实现出最优解,大部分题目为面试高频。 这篇我想写写算法的重要性、我个人是如何学习算法以及一些如何学习算法的建议。 算法在求职以及工作后的重要
牛客网
2018/04/28
2.3K0
数据结构与算法笔记
数据结构与算法,是大学中计算机相关专业里的一门必修的基础课,当时学习的时候并不能列其中的知识点,毕业之后随着对计算机专业知识的了解加深,才意识到其重要性,今天我就来研究一番。
希里安
2023/10/30
2370
数据结构与算法笔记
数据结构与算法《一》
互联网面试不管是电话面试还是现场面,少不了数据结构与算法,尤其大公司,徒手写算法题,是面试成功必备的技能。下面给出思维导图:
伊泽瑞尔
2022/05/31
2100
数据结构与算法《一》
我的学习之旅:从数据结构入门到算法
在2021年,我刚开始学习Java编程时,我主要关注的是如何实现基本的功能,可是随着开发经验的积累,我意识到,代码不只是能运行就好。数据结构是处理数据的基础,理解它可以让我写出很高效、很优雅的代码。在2022年,我决定从基础的数据结构开始学习,比如数组、链表、栈、队列和树等。
Nimyears
2024/10/24
4660
程序员必备——数据结构入门
前言:数据结构与算法作为计算机经典的基础理论课程,同时作为计算机类专业考研课程,并且在校招面试时常被提及,其重要性可见一斑。除此之外,学习这门课程有助于我们用编程去解决、思考问题,设计出更简洁、效率更高的代码。
扎克蕉
2020/06/28
4240
非科班程序员和科班程序员的差距到底在哪里?
作为一名典型的非科班程序员,我在学习和工作一段时间之后,发现了自己跟科班程序员还是有很多的的区别,不管是思维上还是做事风格,以及对待问题的解决方式,都感觉有些差强人意。
Java技术江湖
2019/11/23
7740
哪些算法和数据结构是程序员需要掌握的?
作为一名程序员,大家有没有想过:编码最本质的知识是什么?算法和数据结构或许是,至少很多人这么认为。很多程序员也意识到了算法和数据结构的重要性,下定决心花力气学习它们,于是寻找书籍和视频教程,却发现浩如烟海。好不容易精选了一本后,被书的厚度所折服,看了几页最后不了了之。
double
2018/07/31
4900
程序员必备的50道数据结构和算法面试题
在本文中,将分享一些常见的编程面试问题,这些问题来自于不同经验水平的程序员,囊括从刚大学毕业的人到具有一到两年经验的程序员。
良月柒
2019/10/31
3.4K0
数据结构与算法(一)-初识
前言:一个程序员前期可能需要各种业务和编程的能力,但是后期如果想要提高就需要有一个扎实的基础,厚积薄发,所以最近抽空学了下数据结构与算法,颇有感触,学习过程虽然很枯燥,但是坚持了下来,也收获了很多东西,准备总结一下自己得到的知识,一方面防止忘记,另一方面为更深入的知识面打打基础;接下来先介绍一下大概的知识框架
2018/09/26
5810
数据结构与算法(一)-初识
聊聊阿里社招面试,谈谈“野生”Java程序员学习的道路
很尴尬的是,这个类型的文章其实之前笔者就写过,原文章里,笔者自称LZ(也就是楼主,有人说是老子的简写,笔者只想说,这位同学你站出来,保证不打死你,-_-),原文章名称叫做《回答阿里社招面试如何准备,顺便谈谈对于Java程序猿学习当中各个阶段的建议》,首发于笔者的博客园博客,这里也郑重声明一下,所有内容类似文章均属转载或抄袭。
wo.
2021/06/15
5620
程序员如何准备技术面试
面试准备不能无休止地进行下去,因为计算机知识永远都学习不完。可以给自己设立一个时间点,在时间点之后就开始投简历进行面试。例如你可以设立一个月的面试准备时间,然后再根据求职的岗位以及自己的实际情况去分配时间,把时间主要分给面试主要考察的地方。
宇宙之一粟
2020/10/26
4240
解密算法与数据结构面试:程序员如何应对挑战
算法与数据结构是程序员面试中的核心考察内容,也是应聘者展示编程能力和解决问题能力的重要环节。本文将深入研究在算法与数据结构面试中的应对策略,包括问题分类、刷题技巧、时间空间复杂度分析等,旨在帮助程序员们更好地应对挑战。
猫头虎
2024/04/09
1630
解密算法与数据结构面试:程序员如何应对挑战
为啥学习数据结构和算法
基础知识就像是一座大楼的地基,它决定了我们的技术高度。而要想快速做出点事情,前提条件一定是基础能力过硬,“内功”要到位。
acc8226
2022/05/17
1790
推荐阅读
相关推荐
点进来看看,为什么要学习【数据结构与算法】? 该如何学习?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档