剑指offer27 二叉树的镜像

题目

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

例如输入: 
   4 
  / \ 
  2   7 
 / \ / \ 
1 3 6 9 
镜像输出: 
    4 
   / \ 
  7   2 
 / \ / \ 
9 6 3 1 

示例 1: 
输入:root = [4,2,7,1,3,6,9]
输出:[4,7,2,9,6,3,1]

限制: 
0 <= 节点个数 <= 1000 

方法

翻转法

  • 时间复杂度:O(n),n为二叉树的深度
  • 空间复杂度:O(n)
class Solution {
    public TreeNode mirrorTree(TreeNode root) {
        if(root==null){
            return null;
        }
        TreeNode left = mirrorTree(root.left);
        TreeNode right = mirrorTree(root.right);
        root.left = right;
        root.right = left;
        return root;
    }
}
上一篇:[LeetCode] 173. 二叉搜索树迭代器


下一篇:docker-compose 部署 EFK