首頁 >常見問題 >某二元樹的中序遍歷序列為cbade,則前序遍歷序列為

某二元樹的中序遍歷序列為cbade,則前序遍歷序列為

(*-*)浩
(*-*)浩原創
2019-11-19 09:52:389356瀏覽

某二元樹的中序遍歷序列為cbade,則前序遍歷序列為

某二元樹的中序遍歷序列為CBADE,後序遍歷序列為CBADE,則前序遍歷序列為EDABC。

首先,後序遍歷的意思是先訪問父節點的左右兩個子節點,最後訪問父節點。

因此後序遍歷序列的最後一個元素就是二元樹的根節點,即E,於是CBAD為E的後代節點。 ( 推薦學習:web前端視訊教學

現在繼續查看中序遍歷,中序遍歷的意思是,先訪問父節點的左孩子,再訪問父節點,最後訪問右孩子。

因此在根節點E的左邊的CBAD為它的左孩子,它沒有右孩子。然後再回到後序遍歷序列,因為我們已經知道E為根節點了,所以只需要考慮CBAD。

於是D為E的直屬左孩子,即D為左子樹的根節點。然後繼續檢查中序遍歷,可以發現D沒有右子樹,只有左孩子CBA。

依序類推,可以發現這個二元樹的所有節點都沒有右孩子,從上到下分別為EDABC,因此其前序遍歷為EDABC。

某二元樹的中序遍歷序列為cbade,則前序遍歷序列為

二元樹特徵:

1、每個結點最多有兩顆子樹,所以二元樹中不存在度大於2的結點。

2、左子樹和右子樹是有順序的,次序不能任意顛倒。

3、即使樹中某結點只有一棵子樹,也要區分它是左子樹還是右子樹。

以上是某二元樹的中序遍歷序列為cbade,則前序遍歷序列為的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn