【二叉树】二叉树的镜像

操作给定的二叉树,将其变换为源二叉树的镜像。

 1 /**
 2 public class TreeNode {
 3     int val = 0;
 4     TreeNode left = null;
 5     TreeNode right = null;
 6 
 7     public TreeNode(int val) {
 8         this.val = val;
 9 
10     }
11 
12 }
13 */
14 public class Solution {
15     
16     // 后序遍历的一个变型:递归地交换孩子节点的左右孩子,再交换自己的左右孩子
17     public void Mirror(TreeNode root) {
18 
19         if (root != null) {
20 
21             Mirror(root.left);
22             Mirror(root.right);
23 
24             // 交换左右孩子
25             TreeNode temp = null;
26             temp = root.left;
27             root.left = root.right;
28             root.right = temp;
29         } else {
30             
31             return;
32         }
33     
34     }
35 }

 

posted @ 2016-09-17 15:23  Mr.van_Gogh  阅读(366)  评论(0编辑  收藏  举报