美文网首页
二叉树的镜像

二叉树的镜像

作者: Hammy | 来源:发表于2018-01-31 19:42 被阅读0次

    题目描述
    操作给定的二叉树,将其变换为源二叉树的镜像。
    输入描述:
    二叉树的镜像定义:源二叉树
    8
    /
    6 10
    / \ /
    5 7 9 11
    镜像二叉树
    8
    /
    10 6
    / \ /
    11 9 7 5
    思路:
    就是一个临时变量temp进行左右交换,然后在利用递归的方式进行依次交换,根据题目的特性我们可以选择前序遍历的方式进行递归.
    代码:

    public class Mirror
    {
        public void mirror(TreeNode root){
            if(root == null)
              return;
    
            change(root);
            if(root.left != null)
                change(root.left);
            if(root.right != null)
                change(root.right);
        }
    
        private void change(TreeNode node){
            TreeNode temp = node.left;
            node.left = node.right;
            node.right = temp;
        }
    
    }
    

    相关文章

      网友评论

          本文标题:二叉树的镜像

          本文链接:https://www.haomeiwen.com/subject/esblzxtx.html