美文网首页
面试题19:二叉树的镜像

面试题19:二叉树的镜像

作者: Kitlen | 来源:发表于2020-04-18 21:47 被阅读0次

    题目:

    请完成一个函数,输入一个二叉树,该函数输出它的镜像。

    思路:

    镜像的规律是交换左右子树,其下有子树时,递归操作。
    TODO:该题目也可以使用栈+循环实现。

    实现:

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

    相关文章

      网友评论

          本文标题:面试题19:二叉树的镜像

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