剑指Offer——二叉树的镜像

题目描述:

操作给定的二叉树,将其变换为源二叉树的镜像。
 
输入描述:
二叉树的镜像定义:
源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ 11 9 7 5


分析:

 交换左右子树根结点的指针,再递归交换子树的左右子树根结点的指针。


代码:

 1 /*
 2 struct TreeNode {
 3     int val;
 4     struct TreeNode *left;
 5     struct TreeNode *right;
 6     TreeNode(int x) :
 7             val(x), left(NULL), right(NULL) {
 8     }
 9 };*/
10 class Solution {
11 public:
12     void Mirror(TreeNode *pRoot) {
13         if(pRoot == NULL) return;
14         swap(pRoot->left, pRoot->right);
15         Mirror(pRoot->left);
16         Mirror(pRoot->right);
17     }
18 };

 

posted @ 2017-10-29 10:26  叶建成  阅读(156)  评论(0编辑  收藏  举报