廣義表運算 一個廣義表的表頭總是一個廣義表,這個說法為何不正確?
一個廣義表的表頭總是一個廣義表,這個說法為何不正確?任何非空通用表的頭元素可以是原子元素或表元素,但其尾元素必須是通用表。header元素被定義為通用表中的第一個元素。表的尾部定義為除第一個元素外的所
一個廣義表的表頭總是一個廣義表,這個說法為何不正確?
任何非空通用表的頭元素可以是原子元素或表元素,但其尾元素必須是通用表。header元素被定義為通用表中的第一個元素。表的尾部定義為除第一個元素外的所有元素組成的表。第一個元素可以是表或元素;由其他元素組成的表可以是空的或非空的,但必須是表。因此,說一個廣義表的頭總是一個廣義表是錯誤的。
廣義表長度的概念?
1. 廣義表廣義表是n(n≥0)個數(shù)據(jù)元素A1,A2,A2一個由A,an組成的有限序列,表示為LS=(A1,A2,A2,an),其中LS是廣義表(A1,A2,A2 n是其長度)。在線性表中,AI(1≤I≤n)僅限于一個元素,而在廣義表的定義中,AI可以是一個元素,也可以是一個廣義表,分別稱為廣義表LS的原子和子表。為了清楚起見,通用表的名稱通常用大寫字母表示,原子用小寫字母或數(shù)字表示。
通用表中每個原子的值限制為一個字母或數(shù)字。廣義表的邏輯表示格式是元素之間用逗號分隔,表元素的開始符號和結(jié)束符號分別用左括號和右括號表示,空表的括號中不包含任何字符。例如((),a,(B,C,d))是符合上述規(guī)定的概括表。
2. 廣義表(1)頭的基本概念:當(dāng)廣義表不為空時,第一個元素A1稱為頭。
(2)尾部:由除通用表中的標(biāo)題以外的其他元素組成的表。
(2)深度:通用表中括號嵌套的最大級別。
(4)通用表中包含的元素數(shù)。
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,階數(shù)為2。(5) E=(a,(),((),()),b)——E的頭部是a,尾部是((),((),()),b),E的長度是4,深度是2。