广义表抽象数据类型 数据集合: 广义表的数据集合可以表示为a,a1,a2,…,an1,每个 数据元素或是原子元素,或是一个广义表。 操作集合: (1)创建广义表 Creatglist(S) (2)求长度 GListLength(L) (3)求原子元素个数 GListAtomnum(L) (4)求深度 GListDepth(L)
7 数据集合: 广义表的数据集合可以表示为a0 , a1 , a2 , ..., an-1,每个 数据元素或是原子元素,或是一个广义表。 操作集合: (1)创建广义表CreatGList(S) (2)求长度GListLength(L) (3)求原子元素个数GListAtomNum(L) (4)求深度GListDepth(L) 广义表抽象数据类型
(5)判非空否 GListNotempty(L) (6)取表头 Gethead(L) (7)取表尾Geai(L) (8)插入 GListInsert(L,e) (9)删除 GListDeleter(L,e) (10)查找原子元素 GListSearch(L,e) (11)撒消 Destroy Liste(L)
8 (5)判非空否GListNotEmpty(L) (6)取表头GetHead(L) (7)取表尾GetTail(L) (8)插入GListInsert(L, e) (9)删除GListDelete(L, e) (10)查找原子元素GListSearch(L, e) (11)撤消DestroyGList(L)
72广义表的存储结构 头链和尾链存储结构 一个广义表可以由表头和表尾两部分组成,所以可以 用一个头指针和一个尾指针表示一个广义表。这样, 头链和尾链结构中一个结点的结构由一个标志域tag 决定:当tag值为1时,该结点除标志域外还有一个头 指针域和一个尾指针域;当tag值为0时,该结点除标 志城外还有一个原子元素域
9 7.2 广义表的存储结构 头链和尾链存储结构 一个广义表可以由表头和表尾两部分组成,所以可以 用一个头指针和一个尾指针表示一个广义表。这样, 头链和尾链结构中一个结点的结构由一个标志域tag 决定:当tag值为1时,该结点除标志域外还有一个头 指针域和一个尾指针域;当tag值为0时,该结点除标 志域外还有一个原子元素域
E-++A ∧ ∧ ∧ ∧0d
10 1 1 ∧ 1 1 ∧ 1 0 a 0 b E 1 1 ∧ 0 c 0 d 0 e 1 ∧ 1 ∧