什么是二叉树镜像

二叉树镜像是指把二叉树的所有节点的左右子树进行互换,也就是说,原来的左子树变成右子树,原来的右子树变成左子树,而根节点不变。

Python二叉树转换成二叉树镜像

1、首先,定义一个二叉树的类,其中包括节点值val和左右子树left和right,如下所示:


class TreeNode:
    def __init__(self, val):
        self.val = val
        self.left, self.right = None, None

2、然后,定义一个函数,用于将python二叉树转化为二叉树镜像,函数需要传入一个根节点,如下所示:


def mirror_tree(root):
    if root is None:
        return
    root.left, root.right = root.right, root.left
    if root.left:
        mirror_tree(root.left)
    if root.right:
        mirror_tree(root.right)

3、最后,调用函数,将python二叉树转换成二叉树镜像,如下所示:


mirror_tree(root)