一、基本概念
1、数据(Data):
是对信息的一种符号表示。在计算机科学中是指所有能输入到计算机中并被计算机处理的符号的总称。
2、数据元素(Data Element):
是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。一个数据元素可由若干个数据项组成。
数据项是数据的不可分割的最小单位。
3、数据对象(Data Object):
是性质相同的数据元素的集合。是数据的一个子集。例如,整数数据对象的集合可表示为N={0,±1,±2......},字母字符数据对象的集合可表示为
C={'A','B',...'Z'}
4、数据结构
是相互之间存在一种或多种特定关系的数据元素的集合。
形式化定义:数据结构是一个二元组
Data_Structure = (D,R)
其中,D是数据元素的有限集合,R是D上关系的集合
更具体的说明数据结构定义:
按照某种逻辑关系组织起来的的一批数据(或称带结构的数据元素的集合)应用计算机语言并一定的存储表示方法把它们存储在计算机的存储器中,并在其上定义了一个运算的集合。
具体来说,数据结构包含三个方面的内容,即数据的逻辑结构,数据的存储结构和对数据所施加的运算(操作)。
这三个方面的关系为:
(1)数据的逻辑结构独立于计算机,是数据本身所固有的。
(2)存储结构是逻辑结构在计算机存储器中的映像,必须依赖于计算机。
(3)运算是指所施加的一组操作总称,运算的定义直接依赖于逻辑结构,但运算的实现必须依赖于存储结构。
5、逻辑结构的分类:
(1)集合:结构中的数据元素除了同属于一种类型外,别无其它关系。
(2)线性结构:结构中的数据元素之间存在一对一的关系。
(3)树型结构:结构中的数据元素之间存在一对多的关系。
(4)图状结构或网状结果:结构中的数据元素之间存在多对多的关系。
6、存储方法的分类:
(1)顺序存储方法(顺序存储结构)
(2)链接存储方法(链式存储结构)
(3)索引存储方法
(4)散列存储方法
同一种逻辑结构可采用不同的存储方法(以上四种之一或组合),这主要考虑的是运算方便及算法的时空要求。
顺序存储结构:
用数据元素在存储器中的相对位置来表现数据元素之间的逻辑关系。
链式存储结构:
在每一个数据元素中增加一个存放地址的指针,用此指针来表示数据元素之间的逻辑关系。