Skip to content

广义表

data structure

广义表定义

广义表又称列表(List),是 n≥0 个元素 (a1,a2,a3,...,an) 的优先序列,其中ai是原子数据类型或者是一个广义表,记

LS=(a1,a2,a3,...,an)
  • LS : 表示表名
  • ai : 表示元素,通常小写字母表示元素是原子数据类型,大写字母表示元素是广义表

广义表表头

广义表的第一个元素(a1),可以是一个原子类型也可以是一个广义表

广义表表尾

广义表中除了第一个元素之外的其他元素组成的广义表 --> 表尾是一个表

广义表可以使用 "()" 表示,其中()的最深层数表示表的深度, 表的次序 :一个直接前驱,一个直接后继

例如

LS = (a1) : LS中有一个元素 表头为 a1,表尾为 () LS = (a1, a2) :LS中有两个元素 表头为 a1,表尾为 (a2) LS = (a1, ()) :LS中有两个元素 表头为 a1,表尾为 (()) LS = (a1, a2,()) :LS中有三个元素 表头为 a1,表尾为 (a2,())

表的共享

两个广义表 A,B, 其中A和 B 的关系 B = (A)

表的递归

有一个广义表 A,其中 A = (A)