leetcode二叉树-翻转二叉树

就是递归进行左右节点反转

package binarytree.invertTree;

import binarytree.untils.TreeNode;

/**
 * 226. 翻转二叉树
 * 翻转一棵二叉树。
 *
 * 示例:
 *
 * 输入:
 *
 *      4
 *    /   \
 *   2     7
 *  / \   / \
 * 1   3 6   9
 * 输出:
 *
 *      4
 *    /   \
 *   7     2
 *  / \   / \
 * 9   6 3   1
 * 备注:
 * 这个问题是受到 Max Howell 的 原问题 启发的 :
 *
 * 谷歌:我们90%的工程师使用您编写的软件(Homebrew),但是您却无法在面试时在白板上写出翻转二叉树这道题,这太糟糕了。
 */
public class invertTree {
    public static TreeNode invertTree(TreeNode root) {
        if(root ==null){
            return null;
        }

        TreeNode left = invertTree(root.left);
        TreeNode right = invertTree(root.right);
        root.left = right;
        root.right = left;

        return root;
    }


}
posted @ 2021-12-15 10:34  小傻孩丶儿  阅读(21)  评论(0编辑  收藏  举报