- 什么是广义表?
由 个元素 组成的有序列表称为广义表
- 什么是原子、子表?
广义表中的元素类型可以不同,所以:- 若元素 为单个不可再分的元素,则称该元素为原子
- 若元素 为广义表,则称该元素为子表
若用 表示一个广义表,则:
-
表示广义表的名称
-
表示广义表的长度
-
当 时称为空表
-
每个元素 可以为原子,也可以为一个广义表
-
什么是表头、表尾?
若广义表 非空,则- 第一个元素 称为表头。表头可以是原子也可以是子表;
- 除表头外的其他元素组成的表称为表尾。即 为 的表尾。
-
广义表示例
若有 5 个广义表,其元素如下:
则:-
是一个空表,不含任何元素,其长度为 0。注意
和
的不同:
- 是空表;
- 是长度为1的广义表,包含元素为一个空表的子表。
- 是一个只含有单元素 的表,其长度为 1;
- 中有两个元素,第 1 个元素是单元素 ,第 2 个元素是子表 , 的长度为 2;
- 中有 3 个元素,其中每个元素又都是一个表, 的长度为 3;
- 中只含有一个元素,该元素是一个表,该表中含 3 个元素,其中后两个元素又都是表。
-
是一个空表,不含任何元素,其长度为 0。注意
和
的不同:
-
什么是广义表的长度和深度
- 广义表最外层所包含的元素的个数称为广义表的长度
- 如: 的长度为 2。
- 广义表展开后所含括号的重数称为广义表的深度
- 如: 的深度为 3。
- 广义表最外层所包含的元素的个数称为广义表的长度
参考资料:
[1] 《数据结构(C语言版)》 严魏敏、吴伟民著
[2] 《数据结构(第3版)》 刘大有等著