中序遍歷訣竅 怎么由先序和中序來找二叉樹?
怎么由先序和中序來找二叉樹?在遍歷順序中,第一順序是左、右,中間順序是左、中、右。因此該方法是通過一階(根節(jié)點(diǎn)必須存在且必須是子樹遍歷的第一個(gè)節(jié)點(diǎn))找到根節(jié)點(diǎn),然后根據(jù)相應(yīng)根節(jié)點(diǎn)在中間階的位置來區(qū)分左
怎么由先序和中序來找二叉樹?
在遍歷順序中,第一順序是左、右,中間順序是左、中、右。因此該方法是通過一階(根節(jié)點(diǎn)必須存在且必須是子樹遍歷的第一個(gè)節(jié)點(diǎn))找到根節(jié)點(diǎn),然后根據(jù)相應(yīng)根節(jié)點(diǎn)在中間階的位置來區(qū)分左右子樹。左子樹是它的左子樹,右子樹是它的右子樹。
例如,如果a是根,則在中間順序中,左子樹是dfegb,右子樹是cikjh。然后利用遞歸的思想對(duì)左子樹進(jìn)行分析。Dfegb在pre-order中以B開頭,因此B是根節(jié)點(diǎn)。從中間的順序,我們可以看到這棵樹只有左子樹dfeg;D是根,只有右子樹FEG;E是根,左葉是f,右葉是g。
然后看cikjh。從前序我們知道C是根,從中序我們知道只有右子樹ikjh。從前序h作為根,從中間序我們可以看到只有左子樹IkJ。這棵樹的根是我,只有右邊的子樹。J是根,K是它的左葉。