数据结构绪论
基本概念和术语
数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。
数据:是描述客观事物的符号,是能输入到计算机中处理,计算机可识别可操作的符号集合。数据不仅仅包括整型、实型等数值类型,还包括字符及声音、图像、视频等非数值类型。数据其实就是符号。
数据元素:是组成数据的,有一定意义的基本单位。在计算机中会把它当做整体处理。
举个例子:鸡鸭为禽类的数据元素。
数据项:数据元素可以由一个或者几个数据项组成。比如人的口鼻耳为数据项;也可是姓名,年龄等共同的特征为数据项。
数据项为数据不可分割的最小组成单位。
数据对象:是性质相同的数据元素的集合,是数据的子集。
何为性质相同,即为拥有相同数量,相同类型的数据项。研究皆为性质相同的数据对象,故将数据对象简称为数据。
数据结构:是相互之间存在一种或多种***特定关系***的数据元素的集合。不同数据元素之间不是独立的,相互之间包含着关系,我们将这些关系称为结构。
逻辑结构和物理结构
逻辑结构:是指数据对象中数据元素之间的相互关系。包含四种:
-
集合结构
集合结构中的数据元素除了同属于个集合外,它们之间没有其他关系。元素直接为‘平等’。类似于数学中的集合含义。
-
线性结构
线性结构中数据元素直接是一对一的关系。
-
树形结构
树形结构中数据元素之间是一对多的层次关系。
-
图形结构
图形结构中数据元素之间是多对多的关系。
在示意图中节点代表数据元素,连线代表逻辑关系。
物理结构:是指数据的逻辑结构在计算机中存储形式。
数据的存储形式应当正确反映数据元素之间的逻辑关系。数据的存储方式包含两种:顺序存储结构,链式存储结构。
-
顺序存储结构
是把数据元素存放在地址连续的存储单元中。其数据结构应当和物理结构相同。比如数组。存储结构连续
-
链式存储结构
将数据元素存储在任意的存储单元中。存储单元可以是连续的也可以是不联系的。通过指针存放下一个存储单元的地址。
逻辑结构面向问题,物理结构面向计算机。目的是将数据及他们的逻辑关系存储在计算机中。
数据类型
数据类型:是指一组性质相同的值的集合以及对这些定义在此集合中操作的总称。
数据类型就是根据值的不同进行划分的。比如python中的整数,浮点数,等等。就是为了满足不同计算的需要。
数据类型在c语言中分为两类:
- 原子类型:不可再分解的类型。比如整数,小数,字符
- 结构类型:由若干个类型组合,可以再分解的类型。比如python中的列表,元组等
总结
数据相关的概念
数据结构