zoukankan      html  css  js  c++  java
  • 面试思路:二叉树的镜像

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

    /**
    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) {
            TreeNode tmp = null;
            if (root != null) {
                tmp = root.left;
                root.left = root.right;
                root.right = tmp;
                if (root.left != null)
                    Mirror(root.left);
                if (root.right != null)
                    Mirror(root.right);
            }    
        }
    }

    优化代码:

    /**
    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) {
                Mirror(root.left);
                Mirror(root.right);
                TreeNode temp = root.left;
                root.left = root.right;
                root.right = temp;
            }      
        }
    }
  • 相关阅读:
    KVC
    MRC&ARC
    网络基础
    沙盒
    GCD深入了解
    iOS 架构模式MVVM
    iOS 源代码管理工具之SVN
    iOS给UIimage添加圆角的两种方式
    Objective-C 中,atomic原子性一定是安全的吗?
    iOS Block循环引用
  • 原文地址:https://www.cnblogs.com/SaraMoring/p/5813937.html
Copyright © 2011-2022 走看看