class Solution {
public:
/*递归*/
void Mirror(TreeNode *pRoot) {
if (pRoot == NULL) return;
if (pRoot->left == NULL&&pRoot->right == NULL) return;
TreeNode*tempNode = pRoot->left;
pRoot->left = pRoot->right;
pRoot->right = tempNode;
if (pRoot->left != NULL)
Mirror(pRoot->left);
if (pRoot->right != NULL)
Mirror(pRoot->right);
}
/*循环*/
void Mirror(TreeNode *pRoot) {
if (pRoot == NULL) return;
if (pRoot->left == NULL&&pRoot->right == NULL) return;
stack StackNode;
StackNode.push(pRoot);
while (!StackNode.empty())
{
pRoot = StackNode.top();
StackNode.pop();
TreeNode*tempNode = pRoot->left;
pRoot->left = pRoot->right;
pRoot->right = tempNode;
if (pRoot->left)
StackNode.push(pRoot->left);
if (pRoot->right)
StackNode.push(pRoot->right);
}
}
};