# 動態二元樹的節點 class Node: Node *parent Node *left Node *right key # 動態二元樹 class BinaryTree: Node *root insert(data): Node *x ← root # 從根節點開始進行搜尋 Node *y ← NULL # x 的父節點 # 決定新節點的父節點 while x ≠ NULL: y ← x # 設定父節點 if data < x.key: x ← x.left # 往左子節點移動 else: x ← x.right # 往右子節點移動 # 生成節點並設定指標 Node *z ← 生成節點 z.key ← data z.left ← NULL z.right ← NULL z.parent ← y if y = NULL: # 若 tree 為空樹 root ← z else if z.key < y.key: y.left ← z # 使 z 成為 y 的左子節點 else: y.right ← z # 使 z 成為 y 的右子節點 inorder(Node *u): if u = NULL: return inorder(u.left) 輸出 u.key inorder(u.right)