题目描述
操作给定的二叉树,将其变换为源二叉树的镜像。
输入描述:
二叉树的镜像定义:源二叉树 
            8
           /  \
          6   10
         / \  / \
        5  7 9 11
        镜像二叉树
            8
           /  \
          10   6
         / \  / \
        11 9 7  5

 

思路:

从根节点开始  交换左右孩子  再对孩子进行递归调用

public void Mirror(TreeNode root) {
		if (root == null) { // 递归结束条件
			return;
		}
		if (root.left == null && root.right == null) {  //叶子节点
			return;
		}
		// 交换根节点的左右孩子
		TreeNode temp = root.left;
		root.left = root.right;
		root.right = temp;

		// 对左右孩子进行递归
		Mirror(root.left);
		Mirror(root.right);
	}