二叉树的镜像,要先判断该二叉树是否为空,是否有左右子树。
然后开始遍历左右儿子节点进行左右互换,知道遍历不到左右节点为止。
交换时引入一个参数来保存节点。(即 t=a , a=b , b=t)
public class Solution {
public void Mirror(TreeNode root) {
if(root == null)
return;
if(root.left == null && root.right == null)
return;
TreeNode t = root.left;
root.left = root.right;
root.right = t;
if(root.left != null){
Mirror(root.left);
}
if(root.right != null){
Mirror(root.right);
}
}
}