二叉树镜像
二叉树镜像:二叉树所有非叶子节点且同时存在左右子节点,将其左右子节点互换位置则得到其镜像的二叉树,如果只存在一个子节点则不互换
1.节点定义
# 定义节点
class Node(object):
value = None
left = None
right = None
def __init__(self, value, left, right):
value = value
left = left
right = right
2.节点递归互换
# 镜像反转左右字节点
def mirror_recursively(node: Node):
if node is None or (node.left is None and node.right):
return
node.left, node.right = node.right, node.left
if node.left:
mirror_recursively(node.left)
if node.right:
mirror_recursively(node.right)