前序序列
如果給出遍歷產(chǎn)生的一串字符,不容易確定各個(gè)字符在樹(shù)中的具體位置,因而需要兩個(gè)遍歷串相結(jié)合才能畫(huà)出一棵二叉樹(shù)。
如:給出前序遍歷ADFGHKLPQRWZ,中序遍歷GFHKDLAWRQPZ。 其具體尋找過(guò)程如下:
首先在【前序序列】中找到第一個(gè)訪(fǎng)問(wèn)的節(jié)點(diǎn)【A】,即根節(jié)點(diǎn)
再在【中序序列】中找到【A】,由于其為中序序列,因而【左】邊的為其【左子樹(shù)】中元素,【右邊】的為【右子樹(shù)】元素。
然后再在前序序列中尋找A的下一個(gè)訪(fǎng)問(wèn)元素,為【D】。
以此類(lèi)推按照【前序訪(fǎng)問(wèn)】的順序每次尋找下一個(gè)訪(fǎng)問(wèn)元素,然后以該元素為根把相應(yīng)中序序列分為左樹(shù)元素和右樹(shù)元素,直到達(dá)到最后一個(gè)元素 ,即可得到完整的二叉樹(shù)圖