資料結構 廣義表

2021-07-12 04:27:31 字數 1854 閱讀 1820

廣義表

(lists,又稱列表)是一種非線性的

資料結構

,是線性表

的一種推廣。即廣義表中放鬆對錶元素的原子限制,容許它們具有其自身結構。

思想:

廣義表就類似下圖的結構,他的大體(下圖第一行)相當於乙個帶頭結點的鍊錶,

**思想,首先要有乙個頭結點為head型別,每乙個廣義表有且只有乙個head,而後每個節點如果有分支則把它定義為sub型別,sub便是它分支的乙個新頭他有乙個sublink指標指向他的第乙個元素,如果沒有則是value型別。

本文出自 「痕跡」 部落格,請務必保留此出處

資料結構 廣義表

概念 陣列和廣義表可以看成是線性表在下述含義上的擴充套件,表中資料元素本身也是乙個資料結構。廣義表也可以看作是線性表的推廣。1 廣義表的元素可以是子表,而子表的元素還可以包含子表。2 列表可以被其他列表所共享。3 列表可以是乙個遞迴的表,也就是說列表也可以是自身的子表。由於廣義表裡面的資料元素可以具...

資料結構 廣義表

一 問題概述 廣義表是非線性的資料結構,是由若干個元素組合而成的,廣義表中可以有子表,類似這樣的 我們以c a,b,c,d 為例,將它定義為這樣的資料結構 我們會給定字串的形式,如 char str a,b,c,d 然後將它轉化為如上的資料結構。二 解決辦法 1 將符號 看作是頭節點,然後將是數值的...

資料結構 廣義表

根據表頭 表尾的定義可知 任何乙個非空廣義表的表頭是表中第乙個元素,它可以是原子,也可以是子表,而其表尾必定是子表。也就是說,廣義表的head操作,取出的元素是什麼,那麼結果就是什麼。但是tail操作取出的元素必須外加乙個表 舉乙個簡單的列子 已知廣義表ls a,b,c d,e,f 如果需要取出這個...