题目:
输入一颗二元查找树,将该树转换为它的镜像, 即在转换后的二元查找树中,左子树的结点都大于右子树的结点。 用递归和循环两种方法完成树的镜像转换。
总结:大多数二叉树的题目都可以用递归解决,处理好一个结点之后,剩下的递归来做
void MirrorRecursively(BinaryTreeNode* root)
{
if(root==NULL) return;
if(root->m_left && root->m_right) return;
BinaryTreeNode* temp = root->m_left;
root->m_left = root->m_right;
root->m_right = temp;
if(root->m_left)
MirrorRecursively(root->m_left);
if(root->m_right)
MirrorRecursively(root->m_right);
}