
上QQ阅读APP看书,第一时间看更新
1.3.1 逻辑结构
数据的逻辑结构是指在数据对象中,数据元素之间的相互关系。数据元素之间存在不同的逻辑关系,构成了以下4种结构。
(1)集合。该结构中的数据元素除了同属于一个集合外,数据元素之间没有其他关系。例如,在正整数集合{1,2,3,5,6,9}中,数据元素除了属于正整数外,不存在其他关系。集合表示如图1.3所示。
(2)线性结构。该结构中的数据元素之间是一对一的关系,数据元素之间存在一种先后的次序关系。正在火车站排队取票的乘客就是一个线性结构,A、B、C分别是排队的3名乘客,其中,A排在B的前面,B排在A的后面。线性结构如图1.4所示。

图1.3 集合结构

图1.4 线性结构
(3)树形结构。该结构中的数据元素之间存在一种一对多的层次关系。这就像学校内部的组织结构,学校下面是教学院系、行政处室及一些研究所。树形结构如图1.5所示。
(4)图结构。该结构中的数据元素是多对多的关系。如城市之间的交通路线图就是多对多的关系,A、B、C、D是四个城市,城市A和城市B、C、D都存在一条直达路线,而城市B也与A、C、D存在一条路线。图结构如图1.6所示。

图1.5 树形结构

图1.6 图结构