有根樹的表示 第10章 基本資料結構

2021-08-13 23:12:22 字數 376 閱讀 5264

本節總結了如何用鏈式資料結構表示二叉樹。

根節點x.p = nil

左孩子x.left

右孩子x.right

屬性t.root指向整棵樹的根節點,t.root為nil, 則整棵樹為空。

如果每個結點的孩子任意多時,可用child1,child2,child3… 來代替left 與 right,但如果孩子數無限制則會導致不知分配多少儲存空間。所以採用left-child,right-sibling representation的表示法。

x.left-child指向x的最左邊孩子的結點

x.right-sibling指向x右側相鄰的兄弟結點

對於乙個已經是最右側孩子的結點,其x.right-sibling為nil。

《演算法導論》筆記 第10章 10 4 有根樹的表示

用二叉數表示有多個子女的樹 left x 表示最左邊的兒子,right x 右邊的兄弟。10.4 1 畫出由下列域表示的 根在下標6處的二叉樹。10.4 2 請寫出乙個o n 時間的遞迴過程,在給定含n個結點的二叉樹後,它可以將樹中的每個結點的關鍵字輸出來。void dfs int x 10.4 3...

棧與佇列 第10章 基本資料結構

棧 後進先出 last in,first out,lifo 佇列 先進先出 first in,first out,fifo 壓入 push 無元素引數的delete pop s.top 不包含任何元素時,棧為空的。查詢棧是否為空時,用查詢操作 stack empty。對空棧執行彈出操作稱為下溢 un...

《演算法導論》第10章 基本資料結構 2 鍊錶

演算法導論 裡實現的是無序雙向鍊錶。原始檔 list.h 鍊錶的介面,定義鍊錶和結點的型別,以及鍊錶支援的操作。typedef int data type 注意將結構宣告為新型別的語法 struct tagnode typedef struct tagnode node typedef struct...