聊聊数据结构的那些事

“新年新学期,新始新气息”

又是一年开学季,这个学期较上个学期的专业课更多了,自己的课余时间相应的也减少了许多。而数据结构是我们本学期即将学的一门重要课程。

本学期刚刚起步,我们的辅导员一听到我们即将学习数据结构这一门课程,立马给我们提了个醒,要求我们好好学习,告诉我们数据结构十分重要,考研和找工作十分看重这个。

那么对此我也产生了一些疑问:什么是数据结构,为什么说学习数据结构十分重要,数据结构与数学之间的关系很紧密吗以及怎么样才能学好数据结构呢?

通过上网以及老师在课堂的初步讲解,我简单的了解一下数据结构的相关知识:

数据结构是计算机存储、组织数据的方式。所谓数据结构就是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。而且它往往同高效的检索算法和索引技术有关。

那它是用来干什么的呢?根据课本上介绍的:早期的计算机主要用于数值计算,而现在的计算机主要用于非数值计算,包括对字符、表格和图像等具有一定结构的数据进行处理。这些数据内容存在着某种联系,只有分清楚数据的内在联系,合理地组织数据,才能对它们进行有效的处理,设计出高效的算法。如何合理地组织数据、高效地处理数据,这就是“数据结构”主要研究的问题。

一般认为,一个数据结构是由数据元素依据某种逻辑联系组织起来的。对数据元素间逻辑关系的描述称为数据的逻辑结构;数据必须在计算机内存储,数据的存储结构是数据结构的实现形式,是其在计算机内的表示;此外讨论一个数据结构必须同时讨论在该类数据上执行的运算才有意义。一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率。

在许多类型的程序的设计中,数据结构的选择是一个基本的设计考虑因素。许多大型系统的构造经验表明,系统实现的困难程度和系统构造的质量都严重的依赖于是否选择了最优的数据结构。许多时候,确定了数据结构后,算法就容易得到了。有些时候事情也会反过来,我们根据特定算法来选择数据结构与之适应。不论哪种情况,选择合适的数据结构都是非常重要的。

选择了数据结构,算法也随之确定,是数据而不是算法是系统构造的关键因素。这种洞见导致了许多种软件设计方法和程序设计语言的出现,面向对象的程序设计语言就是其中之一。

由此可见数据结构的重要性。当然至于数据结构与数学之间的关系呢?我于是又上网查找了一些楼主的见解:

数据结构就是讲的一些编程过程中的算法,例如线性表、队列等等,它侧重于从方法上去为编程做准备。而数学跟编程也是有关系的,因为编程需要很好的逻辑思维。

虽然说数据结构需要离散数学作为先行课程,但是没学也可以,只是说学了此门课程,对你学习数据结构会有很好的铺垫作用。因为离散数学侧重讲“关系”,而在数据结构中,例如在树、图论章中,关系特别重要,例如偏序关系,当然还有图、子图等等。所以与其说没关系不对,只是说他们俩关系不大,但是能起到相辅相成的作用,让我们的学习更有效率。

最后,那么如何学习好数据结构这门课程呢?不得不说,学习方法是一个十分抽象的东西,有时候技巧的辅助作用可能相对来说不怎么大,根据个人的见解,学这个东西,我们的的确确需要相应付出一大部分时间和精力。

一开始上来就讲数据结构的基本概念和术语:什么是数据,数据元素,数据项,数据对象......接下来告诉你逻辑结构与存储结构,然后开始阐述空间复杂度、时间复杂度......一系列操作下来全是抽象数据的概念与理论。如果你从这里就听不下去,感到烦躁,那么就很容易导致你的厌烦心理,那何以去认真学习这门课程。

所以我们需要耐心这一优秀品质,好好的撑过前几节的概念课。为了提高学习的专注性,我们可以尝试自己举一些例子,帮助我们更好理解抽象化概念。学习完概念,后续的学习就不会那么枯燥了。(当然即使枯燥,我们也依旧要打起精神,集中注意力)

针对教材及时去刷题(我们班的辅导员是建议刷一刷力扣),也能在刷题中获得收获,提高对这么课程的了解和认识。(当然,如果上课听不太懂,不妨去b站上面听听网课,许多博主的授课都十分的有意思)

以上便是我的全部认识与阐述,接下来我也要好好开始学习数据结构了。

ps:以上概念性的东西是在网上以及书上找的资料,如有侵权,非常抱歉,请联系我删除,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尔玉家的小彭友

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值