zoukankan      html  css  js  c++  java
  • 反转二叉树

    1、题目描述

    操作给定的二叉树,将其变换为源二叉树的镜像

    2、思想

    交换树中所有节点的左右子节点,即得到树的镜像。

    求一棵树的镜像的过程:先前序遍历这棵树的每个节点,如果遍历到的节点有子节点,就交换它的左右两个子节点,当交换完所有非叶节点的左、右子节点之后,就得到了树的镜像。

    2、代码如下:

    /**
    public class TreeNode {
        int val = 0;
        TreeNode left = null;
        TreeNode right = null;


        public TreeNode(int val) {
            this.val = val;
        }


    }
    */


    public class Solution {

        public void Mirror(TreeNode root) {
            if(root == null){
                return;
            }
            if(root.left==null && root.right==null){
                return;
            }

            TreeNode temp = null;
            temp = root.left;
            root.left = root.right;
            root.right = temp;
            if(root.left != null){
                Mirror(root.left);
            }
            if(root.right != null){
                Mirror(root.right);
            }
            
        }
    }



    原文链接:https://blog.csdn.net/g1607058603/article/details/80843928

  • 相关阅读:
    Linux系统类别
    ST-GCN基于skeleton的动作识别
    (gcc/g++)/clang/cl编译器
    羽毛球经典教材范例
    opencv批量读取图片
    十六、mysql 变量
    十五、mysql 存储过程
    十四、mysql 视图
    十三、mysql TCL语言
    十二、mysql 标识列
  • 原文地址:https://www.cnblogs.com/dingpeng9055/p/11696853.html
Copyright © 2011-2022 走看看