1. 程式人生 > 實用技巧 >資料結構-廣義表

資料結構-廣義表

資料結構

4.5廣義表
定義:每n個元素a0,a1,…,a(n-1)的有限序列,元素可以是原子,可以是廣義表。
記作:LS=(a1,a2,…,an),LS為表名,n為表長,ai為元素,習慣上表名用大寫字母,元素用小寫字母表示。
表頭:head(LS)=a1
表尾:除了表頭之外的元素構成的一個子表,記作tail(LS)= (a2,…,an);

廣義表的性質:
深度:括號出現的重數。原子深度是0,空表深度是1。
廣義表可以可以用圖形象地表示出來。
在這裡插入圖片描述
廣義表和線性表的區別:
廣義表可以看作是線性表的推廣,線性表是廣義表的特例。

廣義表的結構非常靈活,在某種條件下,它可以相容線性表,陣列,樹,有向圖等常用的資料結構

當二維陣列的每行或每列作為子表處理時,二維陣列即為一個廣義表。

廣義表的運算:
求表頭GetHead(L):
求表尾GetTai(L):一定是一個表。