一,数据结构的基本概念
数据:所有能够输入到计算机中,能够被程序处理的描述客观事物的符号。
数据项:有独立含义的最小单位,也叫做域。【结构的成员项】
数据元素:组成数据的,有一点意义的基本单位,也叫做节点、记录。【结构变量】
一个数据元素由若干个数据项组成【结构变量】
数据结构:相互之间存在一种或多种特定关系的数据元素的集合。
算法:数据结构所具备的功能、解决特定问题的方法
二,逻辑关系和存储关系
集合: 数据元素同属于一个集合,但元素之间没有任何关系。
线性结构: 数据元素之间存在一对一的关系(表)
树形结构: 数据元素之间存在一对多的关系(树)
图型结构: 数据元素之间存在多对多的关系(图)
数据的存储结构:
顺序存储: 数据元素存储在连续的内存中,用数据元素的相对位置来表示关系
优点:支持随机访问、访问效率高、适合查找数据。
缺点:空间利用率低、对内存的要求高、插入、删除不方便
链式存储: 数据元素存储在彼此独立的内存空间中,每个数据元素中增加一个数据项用于存储其他素的地址,以此来表示数据元素之间的关系。
优点:空间利用率高、插入、删除方便、适合频繁的增删数据
缺点:不支持随机查找、只能从前到后逐个访问
逻辑结构于存储结构的对应关系:
表 顺序 链式
树 链式 顺序
图 顺序+链式
每种逻辑结构采用什么物理存储方式没有明确的规定,通常根据实现的难易程度以及空间、时间的要求,来选择最合适的物理存储结构