剑指OfferJZ18:二叉树的深度-java版 
 
 
 
JZ18:操作给定的二叉树,将其变换为源二叉树的镜像 
- JZ18:操作给定的二叉树,将其变换为源二叉树的镜像
 
从下往上,对于有共同父节点的兄弟节点,将它们交换位置  
 
在遍历二叉树的同时,以二叉树的层为单位,交换兄弟节点,直到第一层为止
使用后序遍历:先遍历当前节点的左孩子,接着遍历当前节点右孩子,最后遍历当前节点 流程: 1.遍历左孩子 2.遍历右孩子 3.遍历父节点 4.交换左孩子和右孩子
public class jz18 {
    public void Mirror (TreeNode pRoot) {
        if(pRoot!=null) {
            // 遍历左孩子
            if (pRoot.left != null) {
                Mirror(pRoot.left);
            }
            //遍历右孩子
            if (pRoot.right != null) {
                Mirror(pRoot.right);
            }
            //交换pRoot节点的左右孩子
            TreeNode temp = pRoot.left;
            pRoot.left = pRoot.right;
            pRoot.right = temp;
        }
    }
}

 
                 
    