zoukankan      html  css  js  c++  java
  • 二叉树的镜像(剑指offer-18)

    题目描述

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

    解析

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

    解答

     1 /**
     2 public class TreeNode {
     3     int val = 0;
     4     TreeNode left = null;
     5     TreeNode right = null;
     6 
     7     public TreeNode(int val) {
     8         this.val = val;
     9 
    10     }
    11 
    12 }
    13 */
    14 public class Solution {
    15     public void Mirror(TreeNode root) {
    16         if(root == null) return;
    17         swap(root);
    18         if(root.left!=null) Mirror(root.left);
    19         if(root.right!=null)Mirror(root.right);
    20     }
    21     private void swap(TreeNode root){
    22         TreeNode t = root.left;
    23         root.left = root.right;
    24         root.right = t;
    25     }
    26 }
  • 相关阅读:
    Servlet
    反射
    Python之装饰器
    app——升级测试点
    Python之基本运算符
    HTTP常见的几种认证机制
    Shell文件包含
    Shell输入/输出重定向
    Shell函数
    Shell循环语句
  • 原文地址:https://www.cnblogs.com/yzhengy/p/13226257.html
Copyright © 2011-2022 走看看