美文网首页
45.前中后序遍历

45.前中后序遍历

作者: vbuer | 来源:发表于2018-09-04 10:00 被阅读18次
    #coding:utf-8
    #二叉树的遍历
    #简单的二叉树节点类
    class Node(object):
        def __init__(self,value,left,right):
            self.value = value
            self.left = left
            self.right = right
    
    #中序遍历:遍历左子树,访问当前节点,遍历右子树
    
    def mid_travelsal(root):
        if root.left is None:
            mid_travelsal(root.left)
        #访问当前节点
        print(root.value)
        if root.right is not None:
            mid_travelsal(root.right)
    
    #前序遍历:访问当前节点,遍历左子树,遍历右子树
    
    def pre_travelsal(root):
        print (root.value)
        if root.left is not None:
            pre_travelsal(root.left)
        if root.right is not None:
            pre_travelsal(root.right)
    
    #后续遍历:遍历左子树,遍历右子树,访问当前节点
    
    def post_trvelsal(root):
        if root.left is not None:
            post_trvelsal(root.left)
        if root.right is not None:
            post_trvelsal(root.right)
        print (root.value)
    

    相关文章

      网友评论

          本文标题:45.前中后序遍历

          本文链接:https://www.haomeiwen.com/subject/nezniftx.html