前言
目录
本文对数据结构常见的概念用生活中的例子进行解释,通俗易懂。
1、数据
数据:数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。
例子:用浏览器进行搜索会出现网页、图片、音频、视频等等。图片是图像数据,音频是声音数据,视频是视频数据,网页就是全部数据的搜索包括数字和字符等文字数据。
所以说数据就是符号,这些符号包含两个前提:1、可以输入到计算机中,2、能被计算机程序处理。
2、数据元素
数据元素:也叫记录,在计算机中作为整体处理。是组成数据的、有一定意义的基本单位。
例子:在人类中,人是数据元素
3、数据项
数据项:一个数据元素可以由若干个数据项组成。
例子:人是一个数据元素,可以有眼睛,耳朵,鼻子,嘴巴...这些数据项,也可以有姓名,年龄,身高...这些数据项。
数据项是数据不可分割的最小单位,但是在考虑问题时,数据元素才是着眼点。就像我们看电影看的是电影里面的人物(数据元素)而不是电影人物的姓名,年龄(数据项)
4、数据对象
数据对象:是性质相同的数据元素的集合,是数据的子集。性质相同指的是数据元素具有相同数量和类型的数据项
5、数据结构
结构就是关系,数据结构就是相互之间存在一种或多种特定关系的数据元素的集合。
6、逻辑结构与物理结构
1、逻辑结构:数据对象中数据元素之间的相互关系
2、物理结果:也叫存储结构,数据的逻辑结构在计算机中的存储形式
逻辑结构 | 物理结构 |
集合结构: 集合中的数据元素除了同属于一个集合外,没有其他关系。 | 顺序存储结构: 把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系一致。 |
线性结构: 线性结构中的数据元素之间是一对一的关系。 | 链式存储结构: 把数据元素存放在任意的存储单元里,存储单元可以连续,也可以不连续。数据元素的存储关系并不能反映其逻辑关系 |
树形结构: 树形结构中的数据元素之间存在一对多的关系。 | |
图形结构: 图形结构中数据元素存在多对多的关系。 |
3、对链式存储结构的理解:在银行办理业务都需要先取一个号,等着叫号,叫到谁谁就去办理。在等待的时候,你爱在哪就在哪。你关注的只是前一个号有没有被叫到,叫到了,下一个就轮到你了。 这个例子里,你的位置就相当于存储空间,你可以连续的站在一起排队也可以不连续在任意位置等候。叫号就相当于指针,通过叫号就可以找到你
7、数据类型
数据类型:是指一组性质相同的指的集合及定义在此集合上的一些操作的总成。如C语言中 int a ; 就表示在给变量a赋值时不能超过int 的取值范围,变量a的运算只能是int类型所允许的运算
8、抽象数据类型
抽象数据类型:一个数学模型及定义在该模型上的一组操作。一组操作如:超级玛丽中游戏的主角是马里奥,他可以前进后退跳跃等等