广义表运算 一个广义表的表头总是一个广义表,这个说法为何不正确?
一个广义表的表头总是一个广义表,这个说法为何不正确?
任何非空通用表的头元素可以是原子元素或表元素,但其尾元素必须是通用表。header元素被定义为通用表中的第一个元素。表的尾部定义为除第一个元素外的所有元素组成的表。第一个元素可以是表或元素;由其他元素组成的表可以是空的或非空的,但必须是表。因此,说一个广义表的头总是一个广义表是错误的。
广义表长度的概念?
1. 广义表广义表是n(n≥0)个数据元素A1,A2,A2一个由A,an组成的有限序列,表示为LS=(A1,A2,A2,an),其中LS是广义表(A1,A2,A2 n是其长度)。在线性表中,AI(1≤I≤n)仅限于一个元素,而在广义表的定义中,AI可以是一个元素,也可以是一个广义表,分别称为广义表LS的原子和子表。为了清楚起见,通用表的名称通常用大写字母表示,原子用小写字母或数字表示。
通用表中每个原子的值限制为一个字母或数字。广义表的逻辑表示格式是元素之间用逗号分隔,表元素的开始符号和结束符号分别用左括号和右括号表示,空表的括号中不包含任何字符。例如((),a,(B,C,d))是符合上述规定的概括表。
2. 广义表(1)头的基本概念:当广义表不为空时,第一个元素A1称为头。
(2)尾部:由除通用表中的标题以外的其他元素组成的表。
(2)深度:通用表中括号嵌套的最大级别。
(4)通用表中包含的元素数。
2. 广义表(1)的例子a=()--a是一个空表,它的长度为零,深度为1,头为(),尾为()。
(2)B=(a,B,c)—-B有两个原子,a,B,c;B的长度是2,深度是1;头部是a,尾部是(B,c)。
(2)C=(a,(B,C,d),e)—-C有两个原子,a和e,以及一个子表(B,C,d)。C的长度为2,深度为2,头部为a,尾部为((B,C,D),e);(4)D=((a,B),C,(D,(e,f),g))——D的头部为(a,B),尾部为(C,(D(e,f),g)),D的长度为2,深度为2,阶数为2。(5) E=(a,(),((),()),b)——E的头部是a,尾部是((),((),()),b),E的长度是4,深度是2。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。