《数据结构》---术语篇

目录

前言:

一.术语

1.1数据

1.2数据结构

1.3逻辑结构和物理结构

二.数据类型和抽象数据类型


 

❤博主CSDN:啊苏要学习

    ▶专栏分类:数据结构

  学习数据结构是一件有趣的事情,希望读者能在我的博文切实感受到数据之间存在的关系,在对数据元素进行操作的时候,能心中有数,脑中有画! 


前言:

  数据结构呢,常常和算法结合在一起,它们就像双星一样成对存在!是想到一个就自然想起另一个的关系。想学好数据结构,首先是需要掌握一门语言,一些基本的知识要懂得运用;其次就是了解消化知识后,下去一定要动手敲代码,没有看会的代码,只有敲会的代码。最后就是,学数据结构,伴随我们整个学习过程的就是不断刷题!无论何时何地,刷题,刷题,再刷题,思考,思考,再思考。这节我们先来讲数据结构里常见的术语,好让我们理解后面我们提到的对象。

一.术语

1.1数据

  数据项并不是我们主要研究的,在计算机中,我们主要对数据元素进行操作和讨论数据对象是数据元素的集合,它是数据的子集。在我们使用计算机处理数据的时候,通常这些数据都是由相同性质的数据元素组成的,所以为了符合我们习惯上的叫法,我们将数据对象简称为数据。什么意思呢?就是,数据是一组相同类型的数据元素,处理数据,就是在处理这种类型的一组数据元素。

  了解完数据的一些概念,那我们来了解数据结构是什么。

1.2数据结构

  我们知道,结构是一种具有特定关系的构造那么数据结构,就是数据元素(多个)之间彼此间具有关系和联系的组合

  数据结构:数据相互之间存在的一种或多种特定关系的集合

  什么是特定关系呢?我们来看到数据结构中的逻辑结构

1.3逻辑结构和物理结构

  逻辑结构是指数据对象中的数据元素之间的相互关系。当一个数据对象里的数据元素之间彼此没有交流,它们唯一具有的关系就是同属于一个集合,这就是集合结构。什么是线性结构、树结构、图结构,我们通过举例子来说明,博主举得例子大概率不贴切现实,望读者谅解。

故事:

  小明是一个在校大学生,初入大学,一切都很陌生,在新生班会上,还没开始自我介绍,大家都互不认识,对于同一个班级里的学生来说,他们仅仅是同处一个班上的关系,也就是集合结构

  导师发言完后,大家纷纷做自我介绍,这时,一个好看的女同学成功引起了小明的注意,小明单纯很喜欢她,小明单方面记住了小美,可惜的是,在自我介绍的后半部分,小美也像小明一样,喜欢上一个帅帅的男生,巧了,也是单方面认识,这就是线性结构啦,请看下图:

  树性结构:树很像一个组织结构,数据元素之间存在一种一对多的关系。

  注意的点是数据元素之间存在一对多的关系,并不是每个元素都必须要一对多。

  图形结构:图形结构的数据元素是多对多的关系

  将每个元素看成一个结点,用圆圈表示。元素之间的连线是表示结点之间的逻辑关系

  以上就是四种逻辑结构啦!集合结构我们不研究,我们研究的是线性结构、树性结构、图形结构。接下来讲的是,逻辑结构是以何种形式存储在内存中,也就是物理结构

  物理结构(存储结构):是指数据的逻辑结构存储在计算机里的形式。

  注意这里的注重点是在形式上。也就是说,我们看的是用什么样的方式,在存放数据元素的时候,也可以表示数据元素之间存在的关系

  换句话说就是,用一种计算机可以理解的形式表示数据之间的逻辑结构。那我们再往下看,物理结构有两种,一种是顺序存储结构,另一种是链式存储结构

  顺序存储结构:是把数据元素放在地址连续的内存单元上,在物理结构与之一致的是数组。数组就是一种表示顺序存储的计算机实现,数组元素的类型相同,数据元素存放在连续地址上

  链式存储结构:是把数据元素放在任意存储单元,可能会有巧合的部分连续,但总体上看,元素分布在不同的位置上(地址不是连续的)。那么如何表示它们之间的关系呢,我们使用结构体和指针来串起这些分散在各地的元素

二.数据类型和抽象数据类型

  数据类型是一组值和定义在这些值上的操作的集合。比如整型int,我们可以知道3、5、8、10等整数值都是整型,能对这些值进行加法、减法、除法等操作。

  抽象是抽出事物具有的普遍性的本质抽象是抽出了问题的本质,忽略了细节实现。是我们的一种思考方式,掌握抽象,理解抽象,往往能让我们看透事物的内在,而非止于表象。就好比,这里有需要实现加法的功能,可以直接用操作符+进行操作,也可以分装成一个加法函数等等,实质上就是要把一个数加到另一个数上,这个实现我们不考虑cpu开关多少次,不考虑不同机型,不同平台等,只考虑本质,加

  抽象数据类型:抽象+数据类型,就是对数据类型的值,和定义在这些值上的操作进行抽象看待。这样我们就不必考虑其实现的细节(不同计算机实现上的差异),而只关注数学上的模型和在该模型上的一组操作。


  本文偏文字型,读来或许枯燥无味,旨在让读者了解有关数据结构的一些术语,在后期的不断学习中,读者也会不自觉使用这些术语来描述数据结构相关的知识,因为它是简洁且实用的。

结语:希望读者读完能有所收获!对数据结构有进一步的认识!✔

  读者对本文不理解的地方,或是发现文章内容上有误等,请在下方评论留言告诉博主哟~,也可以对博主提出一些文章改进的建议,感激不尽!最后的最后!

  ❤求点赞,求关注,你的点赞是我更新的动力,一起进步吧。

  • 19
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
计算机数据结构是计算机科学中非常重要的一个概念,它对于程序员和软件开发人员来说至关重要。学习计算机数据结构可以帮助我们更好地理解和处理数据,提高程序的效率和性能。下面是一个关于计算机数据结构学习的任务建议: 1. 学习基础知识:首先,你需要了解计算机数据结构的基本概念和术语。例如,了解数组、链表、栈、队列和树等常见的数据结构及其特点。 2. 学习算法:数据结构和算法密切相关,学习数据结构的同时也要学习与之对应的常用算法。例如,学习排序算法(如冒泡排序、快速排序)、查找算法(如二分查找)等。 3. 实践编程:理论知识只有通过实践才能真正掌握。尝试用编程语言实现各种数据结构和算法,编写相关的代码并进行调试和测试。 4. 解决问题:挑战自己解决一些与数据结构相关的问题。可以参与在线编程竞赛、解决实际应用中的问题或者尝试解答一些经典的算法问题。 5. 深入学习高级数据结构:一旦掌握了基本的数据结构,可以进一步学习一些高级的数据结构,如图、堆、哈希表等。这些数据结构在实际应用中有着广泛的应用。 6. 阅读相关书籍和教程:除了自学,还可以通过阅读经典的计算机科学书籍和在线教程来加深对数据结构的理解和应用。 7. 参与开源项目:参与开源项目是一个很好的锻炼机会,可以与其他开发者一起合作,共同学习和改进数据结构和算法的实现。 8. 持续学习和实践:数据结构是一个广阔而深奥的领域,持续学习和实践是非常重要的。参与讨论、阅读最新的研究论文和技术博客,保持对新技术和新思想的敏感度。 总之,学习计算机数据结构需要坚持不懈的学习和实践。通过理论知识的掌握和实际应用的经验积累,你将能够更好地应用数据结构来解决实际问题,提高程序的效率和性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

啊苏要学习

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

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

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

打赏作者

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

抵扣说明:

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

余额充值