python實現根據前序與中序求后序


我就不板門弄斧了求后序

class Tree():
    def __init__(self,x):
        self.value=x
        self.left=None
        self.right=None

class Solution():
    def resolution(self,preorder,inorder):
        if not preorder:
            return None
        root = Tree(preorder[0])
        pos_root = inorder.index(preorder[0])
        root.left=self.resolution(preorder[1:pos_root+1],inorder[0:pos_root])
        root.right = self.resolution(preorder[pos_root+1:],inorder[pos_root+1:])
        return root
    def postTravel(self,root):
        if root !=None:
            self.postTravel(root.left)
            self.postTravel(root.right)
            print(root.value)

pre=[1,2,4,7,3,5,6,8]
tin=[4,7,2,1,5,3,8,6]
S=Solution()
root=S.resolution(pre,tin)
S.postTravel(root)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM