1樓:匿名使用者
如果是多選的話b應該也可以選,但如果單選則不能選b。b中描述的二叉樹包括c和d,更準確的說應該是每個節點都只有一個孩子的二叉樹,其中只有c中描述的二叉樹才滿足題目要求的中序和後續相反。簡單分析如下:
對任意一個節點a,其左右孩子分別為bc(可能為空),則其中續為bac,後續為bca,要bca與bac相反,即acb與bac相同只能是b為空,即左孩子為空,推廣到整個二叉樹即任意節點無左孩子。
2樓:匿名使用者
前序遍歷過程是根左右
中序遍歷過程是左根右
所以根據前序可以很快確定根,然後可以檢視根在中序中位置,將中序分為左右兩部分,左邊和右邊兩顆樹,在按照上述方式遞推出確定左子樹的根和右子樹
如本題根據前序,可以確定a為根,a在中序中的位置,可以確定cb為a的左子樹上的結點,沒有右子樹。
確定a之後,再看中序第二值為b,檢視b在中序中的位置,c在b左邊,確定c為b的左子樹。所以本題的具體二叉樹如下:a/
b/c所以後序是cba
某二叉樹的先序和後序遍歷序列正好相反,則該二叉樹一定是什麼二叉樹
3樓:深圳中宇視通科技****
全部是左子樹或 全部是右子樹。 因為先序是 中前後,後續是 前後中。 如果兩個子樹都有孩子的話,那麼按照上面的規定,就肯定不可能成立的,所以是特殊情況,只有一個孩子。
【緊急求助】某二叉樹的前序序列為abcd,中序序列為dcba,則後序序列為(),求詳細
4樓:風中微子都
後序序列為dcba。
詳解為:前序序列的順序是根、左、右,序列abcd第一個一定是根結點,a是根節點。
中序序列順序是左、根、右,因為a是根節點,所以dcb位於a左側,a右側沒有結點,b是dcb三個結點中的根。
前序序列是中左右,根結點為a;中序序列是左中右,左子樹bcd;遵循遍歷序列的規則排列出二叉樹,得出後序遍歷為dcba。
在電腦科學中,二叉樹是每個節點最多有兩個子樹的樹結構。通常子樹被稱作“左子樹”(left subtree)和“右子樹”(right subtree)。二叉樹常被用於實現二叉查詢樹和二叉堆。
二叉樹的每個結點至多隻有二棵子樹(不存在度大於2的結點),二叉樹的子樹有左右之分,次序不能顛倒。二叉樹的第i層至多有2^個結點;深度為k的二叉樹至多有2^k-1個結點;對任何一棵二叉樹t,如果其終端結點數為n_0,度為2的結點數為n_2,則n_0=n_2+1。
一棵深度為k,且有2^k-1個節點稱之為滿二叉樹;深度為k,有n個節點的二叉樹,當且僅當其每一個節點都與深度為k的滿二叉樹中,序號為1至n的節點對應時,稱之為完全二叉樹。
二叉樹在圖論中是這樣定義的:二叉樹是一個連通的無環圖,並且每一個頂點的度不大於3。有根二叉樹還要滿足根結點的度不大於2。
有了根結點之後,每個頂點定義了唯一的父結點,和最多2個子結點。然而,沒有足夠的資訊來區分左結點和右結點。如果不考慮連通性,允許圖中有多個連通分量,這樣的結構叫做森林。
5樓:
前序序列的順序是根、左、右,序列abcd第一個一定是根結點,a是根節點。
中序序列順序是左、根、右,因為a是根節點,所以dcb位於a左側,a右側沒有結點
再看dcb在前序序列中的順序,第一個是b所以,b是dcb三個結點中的根。
再看b在中序序列,b的左邊是dc,右邊沒有結點。
再看dc在前序序列中,c是根節點。
再看c在中序序列中,c左邊是d
所以就可以恢復出這個二叉樹a/
b/c/
d後序序列。。左、右、根,,你自己看咯
某二叉樹的前序遍歷是abdgcefh,中序遍歷是dgbaechf,則起後序遍歷的結點訪問順序是什麼,為什麼
不太記得了,應該是 g d b a e h f c 二叉樹的3中遍歷,知道任何其中2種,就可以建立這個二叉樹。自然就可以得到第3中的遍歷了。具體方法可以翻書或網上查詢相關資料。 前序是 根左右 由此可判斷a為根節點,再看中序 由於a為根,所以在中序中根據 左根右 原則a前的即為a的左子樹 dgb 右...
已知二叉樹後序遍歷序列是dabec,中序遍歷序列debac
左清安賽辛 中序遍歷 debac 後序遍歷 dabec 推導如下 1 從後序可知樹根為c,因為最後的節點是樹根。2 從中序的規則可知樹根在中間,樹根的左邊是左孩子,右邊是右孩子。很明顯樹根c是沒有右孩子,只有左孩子deba。中序遍歷 deba 後序遍歷 dabe 推出e是左子樹的根結點,並且存在左子...
已知二叉樹後序遍歷序列是dabec,中序遍歷序列是debac
第六位面壁者 選d首先看後續遍歷,最後的c是二叉樹的根節點,然後看中序遍歷,最後一個又是c,所以這個二叉樹根節點沒有右子樹。c的位置得到後,再看後續遍歷,e在c前面,所以e是c的左孩子節點,e的位置得到。然後再看中序遍歷,e前面只有一個d,所以d是e的左孩子節點,d的位置得到 剩下的b和a就在e的右...