樹都可用二叉鏈表作為存儲結構,對比各自的結點結構可以看出,以二叉鏈表作為媒介可以導出樹和二叉樹之間的一個對應關系。
◆ 從物理結構來看,樹和二叉樹的二叉鏈表是相同的,只是對指針的邏輯解釋不同而已。
◆ 從樹的二叉鏈表表示的定義可知,任何一棵和樹對應的二叉樹,其右子樹一定為空。

1 樹轉換成二叉樹
對於一般的樹,可以方便地轉換成一棵唯一的二叉樹與之對應。將樹轉換成二叉樹在“孩子兄弟表示法”中已給出,其詳細步驟是:
⑴ 加虛線。在所有兄弟結點之間加線。
⑵ 去連線。只保留大孩子(除最左的第一個子結點),刪除它與其他孩子結點之間連線。
⑶ 層析調整:以樹根節點為軸心,將樹順時針旋轉一定角度,原有的實線左斜(左孩子是左子樹),虛線右斜(虛線連接的兄弟結點為右子樹。

2 二叉樹轉換成樹
對於一棵轉換后的二叉樹,如何還原成原來的樹? 其步驟是:
⑴ 加虛線。若某結點i是其父結點的左子樹的根結點,則將該結點i的右子結點以及沿右子鏈不斷地搜索所有的右子結點,將所有這些右子結點與i結點的父結點之間加虛線相連,如下圖a所示。
⑵ 去連線。去掉二叉樹中所有父結點與其右子結點之間的連線,如下圖b所示。
⑶ 規整化。將圖中各結點按層次排列且將所有的虛線變成實線,如下圖c所示。

3 森林轉換成二叉樹
1、把每顆子樹轉化為二叉樹。
2、第一課二叉樹不懂,從第二課二叉樹開始,依次把后一棵二叉樹根節點作為前一棵二叉樹的根節點右孩子,用線連接起來。

4 二叉樹轉換成森林
① 去連線。將二叉樹B的根結點與其右子結點以及沿右子結點鏈方向的所有右子結點的連線全部去掉,得到若干棵孤立的二叉樹,每一棵就是原來森林F中的樹依次對應的二叉樹,如圖(b)所示。
② 二叉樹的還原。將各棵孤立的二叉樹按二叉樹還原為樹的方法還原成一般的樹,如圖(c)所示。

