1、 某二叉樹的前序序列和後序序列正好相反,則該二叉樹一定是( )的二叉樹。
答:高度等於其節點數
解析:前序遍歷順序是‘M-L-R’,後序遍歷的順序是‘L-R-M’,其中L-R的相對位置不發生變化,變化的是M的位置。題目指出二叉樹的先序序列和後序序列結果正好相反:
- 當二叉樹只有一個節點時,只有M,L和R爲空,滿足條件
- 當二叉樹爲空時,M、L和R均爲空,滿足條件
- 當二叉樹任一節點無左孩子時,L爲空,前序遍歷爲M-R,後序遍歷爲R-M,結果正好相反,滿足條件
- 當二叉樹任一節點無右孩子時,R爲空,前序遍歷的結果爲M-L,後序遍歷的結果爲L-M,滿足條件
- 上述分析的四種條件都滿足二叉樹的高度等於其節點數
2、 一個二叉樹的先序遍歷結果和中序遍歷結果相同,則其所有非葉子節點必須滿足的條件是?
解析:此題解析與上題類似,答案爲只有右子樹
3、 下圖爲一個二叉樹,請選出以下不是遍歷二叉樹產生的順序序列的選項
答:B D
解析:
先序遍歷結果爲(根->左->右):ABCDEFIGJH
中序遍歷結果爲(左->右->根):BDCAIFJGHE
後序遍歷結果爲(左->右->根):DCBIJHGFEA
4、一顆二叉樹的前序遍歷是ABCDFGHE,後序遍歷是BGHFDECA,中序遍歷是?
答:C
解析:
- 由前序(根左右)第一個字母和後序(左右根)最後一個字母可知根節點爲A;
- 中序(左根右),後序(左右根),後序是以B開頭的,所以中序應該以B開頭;中序(左根右),前序(根左右),前序是以E結尾的,所以中序應該以E結尾,所以選C,B和E之間的順序不唯一。
- 已知前序遍歷和後序遍歷無法唯一確定一棵二叉樹。根據前序遍歷和後序遍歷可以確定兩棵樹:
所以中序遍歷結果爲BAGFHDCE也是正確的。