二叉樹的遍歷算法例題 某二叉樹的后序遍歷序列與中序遍歷序列相同?
某二叉樹的后序遍歷序列與中序遍歷序列相同?后序遍歷表示e是根節(jié)點(diǎn)??梢钥闯?,在中間順序中,e在左邊有一個(gè)左子樹,在右邊有一個(gè)右子樹??梢钥闯?,在左子樹中只有一個(gè)D節(jié)點(diǎn)。查看后序遍歷中的Acb序列,可以
某二叉樹的后序遍歷序列與中序遍歷序列相同?
后序遍歷表示e是根節(jié)點(diǎn)。可以看出,在中間順序中,e在左邊有一個(gè)左子樹,在右邊有一個(gè)右子樹??梢钥闯觯谧笞訕渲兄挥幸粋€(gè)D節(jié)點(diǎn)。查看后序遍歷中的Acb序列,可以看出B是右子樹的根節(jié)點(diǎn)。當(dāng)B在中間順序時(shí),發(fā)現(xiàn)B沒有左子樹,也就是說AC都在B的右子樹上,后序遍歷的順序是AC描述A是C的子節(jié)點(diǎn),中間順序是AC,這意味著A在C的左子樹上,前序是edbca
假設(shè)根是a,左子是B,右子是C。其中a、B和C也是二叉樹。如果兩個(gè)遍歷是“相反的”,則B必須為空或C必須為空。因此,標(biāo)準(zhǔn)答案應(yīng)該是:任何節(jié)點(diǎn)都沒有左子節(jié)點(diǎn),或者任何節(jié)點(diǎn)都沒有右子節(jié)點(diǎn)。其中D是對(duì)的,但不是唯一的答案。
二叉樹的先序遍歷序列和后序遍歷序列正好相反?
本質(zhì)上,前序和后序?qū)⒏腹?jié)點(diǎn)與子節(jié)點(diǎn)分開,但它們并不表示左子樹和右子樹的能力。因此,這兩個(gè)序列只能識(shí)別父子關(guān)系,不能識(shí)別二叉樹。二叉樹可以由二叉樹的中間和前序遍歷序列唯一地確定,但不能由前序和后序遍歷序列唯一地確定。二叉樹可以由二叉樹的中間和后序遍歷序列唯一地確定,但不能由前序和后序遍歷序列唯一地確定