1. 程式人生 > >資料結構之二叉樹的遍歷

資料結構之二叉樹的遍歷

二叉樹的遍歷先序遍歷: 先訪問根節點再遍歷左子樹                      再遍歷右子樹中序遍歷:中序遍歷左子樹                      再訪問根節點                       中序遍歷右子樹後序遍歷:中序遍歷左子樹                     中序遍歷右子樹                      再訪問根節點舉個例子:先序遍歷二叉樹 先序遍歷:ABDCEFG其意就是:從根節點A開始,先訪問A的左子樹B再訪問B的左子樹D,再訪問D的右子樹,由於D的左子樹為0,則再訪問D的右子樹,為空,則D訪問完畢....中序遍歷:BDCEALFNQM

中序遍歷B的左子樹,左為空,則中序遍歷B的右子樹,要想遍歷B的右子樹,則需要遍歷B的右子樹,則需要遍歷C的左子樹...後序遍歷:BDMFLECA先訪問左,再訪問右,再訪問根,那就是B,訪問右邊,先訪問C的左子樹,D左為空,D右為空,然後再訪問MFLECA再舉個栗子:已知二叉樹的前序和中序,求後序前序:FBACDEGH中序:ABDCEFGH我們可以根據前序來判斷其原二叉樹的根節點,再根據中序來判斷他的左子樹和右子樹原二叉樹如下:                        則它的後序為:ADECBHGF