Leetcode打卡 翻转二叉树

在这里插入图片描述

class Solution {
    public TreeNode invertTree(TreeNode root) {
        if(root==null){
            return null;
        }
        else if(root.left!=null||root.right!=null){
            TreeNode left=new TreeNode();
            TreeNode right=new TreeNode();
            left=root.left;
            right=root.right;
            root.left=right;
            root.right=left;
        }
        return root;
        


    }
}

解题思路

对于本题的翻转二叉树 我是使用递归的方法,首先观察题目的要求,就是把一个结点的左右子树调转位置。那么可以用递归的方法,首先定义俩个TreeNode 一个左 一个右,然后用来保存现在的左子树,右子树分别是什么,然后再相互调转。

猜你喜欢

转载自blog.csdn.net/mmmm0303/article/details/106319630