翻转二叉树

翻转二叉树

题目:
翻转一棵二叉树。

示例:

输入:
在这里插入图片描述

输出:
在这里插入图片描述
解题思路:运用递归从上至下进行翻转

/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode(int x) { val = x; }
 * }
 */
class Solution {
    public TreeNode invertTree(TreeNode root) {
        return reverse(root);
    }
    
    private TreeNode reverse(TreeNode node) {
        if(node == null)
            return null;
        TreeNode tmp = node.left;
        node.left = node.right;
        node.right = tmp;
        node.left = reverse(node.left);
        node.right = reverse(node.right);
        return node;
    }
}
原文地址:https://www.cnblogs.com/katoMegumi/p/13913160.html