数据结构1之基本概念
一、基本概念和术语
1.1 数据
数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。
也就是说,数据,其实就是符号,但这些符号具备以下两个前提:
*可以输入到计算机中。
*能被计算机程序处理。
1.2 数据元素
数据元素:是组成数据的,有一定意义的基本单位,在计算机中通常作为整体处理。也被称为记录。
1.3 数据项
数据项:一个数据元素可以由若干个数据项组成。
比如:人是一个数据元素,它就可以有手,眼,嘴等数据项。
数据项是数据不可分割的最小单位。但真正讨论问题时,数据元素才是数据结构中建立数据模型的着眼点。
1.4 数据对象
数据对象:是性质相同的数据元素的集合,是数据的子集。
所谓性质相同是指数据元素具有相同数量的和类型的数据项。
我们都将数据对象简称为数据。
1.5 数据结构
结构:各个组成部分相互搭配和排列的方式。
数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。
二 逻辑结构和物理结构
2.1 逻辑结构
逻辑结构:指数据对象中数据元素之间的相互关系。这也是我们今后要关注的问题。
2.1.1 集合结构
集合结构:集合结构中的数据元素除了同属于一个集合外,他们之间没有其他关系。
各个元素是平等的,他们的共同属性是同属于相同集合。
2.1.2 线性结构
线性结构:线性结构中的数据元素之间是一对一的关系。除第一个元素外,其余每一个元素都有一个前驱,除最后一个元素外,每个元素都有一个后驱。
2.1.3 树形结构
树形结构:树形结构中数据元素之间存在一种一对多的层次关系。
2.1.4 图形结构
图形结构:图形结构的数据元素是多对多的关系。
综上,逻辑结构是针对具体问题的,在问题理解的基础上,选择一个合适的数据结构表示数据元素间的逻辑关系。
2.1 物理结构
物理结构:也叫存储结构,是指数据的逻辑结构在计算机中的存储形式。
数据的存储结构应正确的反应数据元素之间的逻辑关系,而如何存储数据元素之间的逻辑关系才是最关键的。
2.2.1 顺序存储结构
顺序存储结构:把数据元素存放在连续的存储单元里,其数据间的逻辑关系与物理关系是一致的。
2.2.2 链式存储结构
链式存储结构:把数据元素存放在任意的存储单元里,这组存储单元可以是连续的也可以是不连续的。数据元素的存储关系不能真真反应其逻辑关系,因此要用一个指针存放数据元素的地址,然后通过这个地址就可以找到相关联的数据元素的位置。
三、抽象数据类型
3.1 数据类型
数据类型:指一组性质相同的值的集合以及定义在此集合上的一些操作的总称。
3.2 抽象数据类型
抽象数据类型(ADT):指一个数学模型及定义在该模型上的一组操作。