请完成一个函数,输入一个二叉树,该函数输出它的镜像。

方法1:递归遍历

/**
 * struct TreeNode {
 *	int val;
 *	struct TreeNode *left;
 *	struct TreeNode *right;
 *	TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
 * };
 */
 
TreeNode* Mirror(TreeNode* pRoot) 
{
	TreeNode* temp;
	if(pRoot==NULL)
	{
		return pRoot;
	}
	temp=pRoot->left;
	pRoot->left=pRoot->right;
	pRoot->right=temp;
	Mirror(pRoot->left);
	Mirror(pRoot->right);
	return pRoot;
}   

//方法2:利用栈(或队列)遍历