當(dāng)前位置:
首頁(yè) >
已知二叉树先序和中序遍历结果,求后序遍历结果
發(fā)布時(shí)間:2024/4/13
24
豆豆
生活随笔
收集整理的這篇文章主要介紹了
已知二叉树先序和中序遍历结果,求后序遍历结果
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
以下面的例題為例進(jìn)行講解:
已知一棵二叉樹(shù)的先序遍歷序列和中序遍歷序列分別是ABDCEF、BDAECF,求二叉樹(shù)及后序遍歷序列。
分析:先序遍歷序列的第一個(gè)字符為根結(jié)點(diǎn)。
對(duì)于中序遍歷,根結(jié)點(diǎn)在中序遍歷序列的中間,左邊部分是根結(jié)點(diǎn)的左子樹(shù)的中序遍歷序列,右邊部分是根結(jié)點(diǎn)的右子樹(shù)的中序遍歷序列。
先序:ABDCEF --> A BD CEF
中序:BDAECF --> BD A ECF
得出結(jié)論:A是樹(shù)根,A有左子樹(shù)和右子樹(shù),左子樹(shù)有BD結(jié)點(diǎn),右子樹(shù)有CEF結(jié)點(diǎn)。
先序:BD --> B D
中序:BD --> B D
得出結(jié)論:B是左子樹(shù)的根結(jié)點(diǎn),B無(wú)左子樹(shù),有右子樹(shù)(只有D結(jié)點(diǎn))。
先序:CEF --> C E F
中序:ECF --> E C F
得出結(jié)論:C是右子樹(shù)的根結(jié)點(diǎn),C有左子樹(shù)(只有E結(jié)點(diǎn)),有右子樹(shù)(只有F結(jié)點(diǎn))。
還原二叉樹(shù)為: A
B C
D E F
后序遍歷序列:DBEFCA
(如果已知中序和后序序列,同樣可以推斷出先序序列,其方法是從后序序列入手,后序序列的最后一個(gè)節(jié)點(diǎn)是根節(jié)點(diǎn),然后按照上述方法的逆方法即可以求得)
已知一棵二叉樹(shù)的先序遍歷序列和中序遍歷序列分別是ABDCEF、BDAECF,求二叉樹(shù)及后序遍歷序列。
分析:先序遍歷序列的第一個(gè)字符為根結(jié)點(diǎn)。
對(duì)于中序遍歷,根結(jié)點(diǎn)在中序遍歷序列的中間,左邊部分是根結(jié)點(diǎn)的左子樹(shù)的中序遍歷序列,右邊部分是根結(jié)點(diǎn)的右子樹(shù)的中序遍歷序列。
先序:ABDCEF --> A BD CEF
中序:BDAECF --> BD A ECF
得出結(jié)論:A是樹(shù)根,A有左子樹(shù)和右子樹(shù),左子樹(shù)有BD結(jié)點(diǎn),右子樹(shù)有CEF結(jié)點(diǎn)。
先序:BD --> B D
中序:BD --> B D
得出結(jié)論:B是左子樹(shù)的根結(jié)點(diǎn),B無(wú)左子樹(shù),有右子樹(shù)(只有D結(jié)點(diǎn))。
先序:CEF --> C E F
中序:ECF --> E C F
得出結(jié)論:C是右子樹(shù)的根結(jié)點(diǎn),C有左子樹(shù)(只有E結(jié)點(diǎn)),有右子樹(shù)(只有F結(jié)點(diǎn))。
還原二叉樹(shù)為: A
B C
D E F
后序遍歷序列:DBEFCA
(如果已知中序和后序序列,同樣可以推斷出先序序列,其方法是從后序序列入手,后序序列的最后一個(gè)節(jié)點(diǎn)是根節(jié)點(diǎn),然后按照上述方法的逆方法即可以求得)
轉(zhuǎn)載于:https://www.cnblogs.com/hewenwu/articles/3630795.html
總結(jié)
以上是生活随笔為你收集整理的已知二叉树先序和中序遍历结果,求后序遍历结果的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Linux下配置安装PHP环境
- 下一篇: 关于async与await的FAQ 转