要取出链结串列的某一个节点.ppt

要取出链结串列的某一个节点

二元樹 每一個節點最多只有二個子節點(可能沒有子節點,或是只有一個) 很常見且具有很多應用 下圖的範例,也稱作運算樹,是將運算子以父節點表示,運算元以子節點表示 * A B * * c d 圖7-7 二元樹範例-運算樹 左右子樹 左子節點:位於左邊的子節點 左子樹:以該左子節點為根節點所對應的樹 右子節點:位於右邊的子節點 右子樹:以該右子節點為根節點所對應的樹 針對上頁的範例樹,其左右子樹如下圖 A B * * c d 左子樹 右子樹 圖7-8 左子樹和右子樹 實做二元樹 定義樹中每一個節點的資料型態 將左子節點(或左子樹)以指標 “left”表示,而將右子節點(或右子樹)以指標 “right”表示,示意圖如下: A null null + * B null null C null null * D null null 圖7-9 二元樹的實作示意圖 二元樹的三種探訪法 前序法(Preorder) 先探訪父節點、再探訪左子節點、最後探訪右子節點 對應到運算式的前序法,如:+*AB*CD 中序法(Inorder) 先探訪左子節點、再探訪父節點、最後探訪右子節點 對應到運算式的中序法,如:A*B+C*D 後序法(Postorder) 先探訪左子節點、再探訪右子節點、最後探訪父節點 對應到運算式的後序法,如:AB*CD*+ 遞迴程序 為二元樹探訪程序的基礎 在程序

文档评论(0)

1亿VIP精品文档

相关文档