LeetCode-Invert Binary Tree

  • problem:

Invert a binary tree.

     4
   /   \
  2     7
 / \   / \
1   3 6   9

to

     4
   /   \
  7     2
 / \   / \
9   6 3   1

  • analysis:

利用递归将root的左节点赋值为转换了右子树的右节点,将root的右节点赋值为转换了左子树的左节点,并返回root。

  • anwser:

/**

 * Definition for a binary tree node.

 * public class TreeNode {

 *     int val;

 *     TreeNode left;

 *     TreeNode right;

 *     TreeNode(int x) { val = x; }

 * }

 */

public class Solution {

    public TreeNode invertTree(TreeNode root) {

        if(root ==null) return root;

        TreeNode temp = null;

        temp = root.left;

        root.left=invertTree(root.right);

        root.right=invertTree(temp);

        return root;

    }

}


你可能感兴趣的:(LeetCode-Invert Binary Tree)