剑指Offer——(18)二叉树的镜像

来源:互联网 发布:新浪微博绑定淘宝 编辑:程序博客网 时间:2024/06/15 10:58

题目描述:

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

实现如下:

//每一个节点都是每一棵子树的根节点,只须交换左右孩子节点即可//注意输入空指针防御/*输入样例二叉树的镜像定义:源二叉树             8           /  \          6   10         / \  / \        5  7 9 11        镜像二叉树            8           /  \          10   6         / \  / \        11 9 7  5*//*节点结构体定义struct TreeNode {    int val;    struct TreeNode *left;    struct TreeNode *right;    TreeNode(int x) : val(x), left(NULL), right(NULL) {}};*/class Solution {public:    void Mirror(TreeNode *pRoot)     {        if (pRoot == NULL) return;//判断是否为空指针        TreeNode *tmp = pRoot->left;//否则交换左右孩子的指向        pRoot->left = pRoot->right;        pRoot->right = tmp;        Mirror(pRoot->left);//递归调用对左孩子镜像处理        Mirror(pRoot->right);//递归调用对右孩子镜像处理    }};
0 0
原创粉丝点击