Invert a binary tree.
4
/ \
2 7
/ \ / \
1 3 6 9
to
4
/ \
7 2
/ \ / \
9 6 3 1
解题思想
递归遍历当前节点的左右子树,只要左右子树不为空,>就交换左右子树!
代码实现
public class Solution {
public TreeNode invertTree(TreeNode root) {
if(root == null)
return null;
TreeNode tmp = root.left;
root.left = root.right;
root.right = tmp;
if(root.left!=null)
invertTree(root.left);
if(root.right!=null)
invertTree(root.right);
return root;
}
}