5.4.1 廣義表的概念
廣義表也是線性表的一種推廣。
廣義表也是n個資料元素(d1,d2,d3,…,dn)的有限序列,但不同的是,廣義表中的di既可以是單個元素,還可以是乙個廣義表,通常記作:gl=(d1,d2,d3,…,dn)。gl是廣義表的名字,通常用大寫字母表示。
n是廣義表的長度。若 di是乙個廣義表,則稱di是廣義表gl的子表。
在gl中, d1是gl的表頭,其餘部分組成的表(d2,d3,…,dn)稱為gl的表尾。由此可見,廣義表的定義是遞迴定義的。
例:例:求廣義表表頭與表尾。
已知廣義表 l = ( (x,y,z),a,(u,t,w) ),求head(head(tail(tail(l))))的結果。
解:(1)tail(l) = (a,(u,t,w))
(2)tail(tail(l)) = ((u,t,w))
(3)head(tail(tail(l))) = (u,t,w)
(4)head(head(tail(tail(l)))) = u
所以head(head(tail(tail(l)))) = u。
廣義表的表頭表尾
把好久之前的c語言的知識記錄整理傳送下表頭表尾 head 返回列表的第乙個元素 tail 返回列表的刪去第乙個元素之後的剩餘列表 已知廣義表 a a,b b a,a c a,b,a b 求下列運算的結果 tail head tail c 所以,tail c b,a b head tail c hea...
廣義表((a,b),c,d)表頭和表尾分別是什麼?
廣義表 a,b c,d 表頭和表尾分別是什麼?當廣義表ls非空時,稱第乙個元素為ls的表頭 稱廣義表ls中除去表頭後其餘元素組成的廣義表為ls的表尾。例如,廣義表 a,b 的表頭是單元素a,表尾是廣義表 b 根據廣義表對表頭和表尾的定義可知 對任意乙個非空的廣義表,其表頭可能是單元素,也可能是廣義表...
廣義表((a,b),c,d)表頭和表尾分別是什麼?
廣義表 a,b c,d 表頭和表尾分別是什麼?當廣義表ls非空時,稱第乙個元素為ls的表頭 稱廣義表ls中除去表頭後其餘元素組成的廣義表為ls的表尾。例如,廣義表 a,b 的表頭是單元素a,表尾是廣義表 b 根據廣義表對表頭和表尾的定義可知 對任意乙個非空的廣義表,其表頭可能是單元素,也可能是廣義表...