题目大意:给定一个二叉树,将其变换为源二叉树的镜像。
算法标签:递归
代码:/*
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
* };
*/
class Solution {
public:
TreeNode* Mirror(TreeNode* root) {
if(root == NULL)
return root;
// 交换左右子树
TreeNode* temp = root -> left;
root -> left = root -> right;
root -> right = temp;
// 左右子树分别镜像一下
root -> left = Mirror(root -> left);
root -> right = Mirror(root -> right);
return root;
}
};
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)