Advertisement

编写二叉树反转代码(Python版本)

阅读量:

给定一棵二叉树,需要生成其左右镜像对调后的结构,并输出该结构对应的中序遍历结果。

复制代码
    例:
      翻转前:     翻转后:
    1     |     1
       / \    |    / \
      2   3   |   3   2
     / \      |      / \
    4   5     |     5   4
    
    
      
      
      
      
      
      
      
    

思路:

镜像翻转操作的实现方式为:对二叉树进行遍历,在访问每个节点的过程中,将其左子节点与右子节点的位置进行互换,随后继续对交换后的左右子节点执行递归翻转处理。

代码:

复制代码
    class Node(object):
    def __init__(self,val=None,lchild=None,rchild=None):
        self.value=val
        self.lchild=lchild
        self.rchild=rchild
    
    def mirror(self,root):
        if not root:
            return
        ro

全部评论 (0)

还没有任何评论哟~