day11. 在二维数组中查找数据
题目描述:操作给定的二叉树,将其变换为源二叉树的镜像。
1. 分析
想到二叉树解题模板,先告诉根结点要怎么做,然后将左右子树丢给递归即可。
本题是要求镜像二叉树,即对于根结点来说,我们要反转根结点的左右子树,然后对根结点的左右子树进行递归即可。
2. 用C++写出逻辑:
TreeNode* Mirror(TreeNode* pRoot) {
if(pRoot == nullptr)
return nullptr;
TreeNode* tmp = nullptr;
/* 根结点交换其左右子树 */
tmp = pRoot -> left;
pRoot -> left = pRoot -> right;
pRoot -> right = tmp;
/* 分别递归左右子树 */
Mirror(pRoot -> left);
Mirror(pRoot -> right);
return pRoot;
}