Description

剑指 Offer 27. 二叉树的镜像

难度简单83
请完成一个函数,输入一个二叉树,该函数输出它的镜像。
例如输入:

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

镜像输出:

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

示例 1:
输入:root = [4,2,7,1,3,6,9]
输出:[4,7,2,9,6,3,1]

限制:
0 <= 节点个数 <= 1000
**

Solution

  1. /**
  2. * Definition for a binary tree node.
  3. * public class TreeNode {
  4. * int val;
  5. * TreeNode left;
  6. * TreeNode right;
  7. * TreeNode(int x) { val = x; }
  8. * }
  9. */
  10. class Solution {
  11. public TreeNode mirrorTree(TreeNode root) {
  12. preReverse(root);
  13. return root;
  14. }
  15. public void preReverse(TreeNode node){
  16. if ( node == null)
  17. return ;
  18. TreeNode temp = node.left;
  19. node.left = node.right;
  20. node.right = temp;
  21. preReverse(node.left);
  22. preReverse(node.right);
  23. }
  24. }