《数据结构》复习13 广义表
发布网友
发布时间:2024-10-09 14:19
我来回答
共1个回答
热心网友
时间:2024-10-09 16:15
广义表定义为A = ()表示空表,B = (d, e)表示元素为原子d和e的表,C = (b, B, (c, d))则包括原子b、广义表B和广义表(c, d)。
广义表的长度计算,例如A长度为0,B长度为2,C长度为3。
广义表的深度取决于嵌套括号的数量,A深度为1,B同样为1,而E深度为4。
获取广义表的表头和表尾,A的表头为a,尾部为(b, c)。对于空表B,表头不存在,尾部为()。C的表头为a,尾部为(b)。
在存储结构上,最后一个元素可以是无限深度的广义表,如B = (a, B)。
关于例题,已知广义表L = (a, (b, c), (d, e)),使用取头函数GetHead和取尾函数GetTail,求出原子e。答案为e = GetHead(GetTail(GetHead(GetTail(GetTail(L)))))。