基本术语
先了解和熟悉数据结构中各个名称的定义,要不然一堆专业名词,云里雾里
数据项
一个数据元素可以由若干个数据项组成,
数据项是数据不可分割的最小单位数据对象
是性质相同的数据元素的集合,是数据的子集
- 数据结构
可以从分子结构这一意象延伸而出,一说数据结构,就联想到分子结构,比如H2O。
组成分子的原子之间的排列方式。
逻辑结构
集合结构
集合结构中的数据元素除了同属于一个集合外,它们之间没有其他关系。
线性结构
线性结构中的数据元素之间是一对一的关系。
树形结构
树形结构中的数据元素之间存在一对多的层次关系。
图形结构
多对多关系
用示意图表示数据的逻辑结构时,要注意两点
- 将每一个数据元素看作一个结点,用圆圈表示
- 元素之间的逻辑关系用结点之间的连线表示,如果这个关系是有方向的,那么用带箭头的连线表示
物理结构(存储结构)
指数据的逻辑结构在计算机中的存储形式
顺序存储结构
把数据元素存放在连续的存储单元里,其数据间的逻辑关系和物理关系是一致的
- 数组就是这样的顺序存储结构
当你告诉计算机,你要建立一个有9个整型数据的数组时,计算机就在内存中找了片空地,按照一个整型所占位置的大小乘以9,开辟一段连续的空间,然后数据按照顺序位置摆放。
链式存储结构
如果整个结构长度时刻处于变化中,顺序存储就不适用了。
把数据元素存放在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的。
数据存在哪里不重要,只要有一个指针存放了相应的地址就能找到它了。