操作给定的二叉树,将其变换为源二叉树的镜像。
思路:
/* 先前序遍历这棵树的每个结点,如果遍历到的结点有子结点,就交换它的两个子节点,
当交换完所有的非叶子结点的左右子结点之后,就得到了树的镜像 /
/*
public class Solution {
public void Mirror(TreeNode root) {
if(root == null)
return; //不返回什么内容
if(root.left == null && root.right == null) //假如不加上这个判断 那么假如左右节点都是空的 那么进行无效的操作浪费时间
return; //不返回什么内容
TreeNode pTemp = root.left;
root.left = root.right;
root.right = pTemp;
if(root.left != null) //提前判断 免得为空的时候调用函数判断
Mirror(root.left);
if(root.right != null)
Mirror(root.right); //提前判断 免得为空的时候调用函数判断
}
}