复制一树为新树
#include "allinclude.h"
void CopyBiTree(BiTree T, BiTree &TT)
{ // Add your code here
if(T==NULL)
return;
TT=(BiTree)malloc(sizeof(T));
LQueue Q1,Q2;
BiTree temp=T;
InitQueue_LQ(Q1);
InitQueue_LQ(Q2);
EnQueue_LQ(Q1,T);
EnQueue_LQ(Q2,TT);
while(QueueEmpty_LQ(Q1)!=TRUE)
{
DeQueue_LQ(Q1,T);
DeQueue_LQ(Q2,T);
T->data=T->data;
if(T->lchild!=NULL)
{
T->lchild=(BiTree)malloc(sizeof(T));
EnQueue_LQ(Q1,T->lchild);
EnQueue_LQ(Q2,T->lchild);
}
if(T->rchild!=NULL)
{
T->rchild=(BiTree)malloc(sizeof(T));
EnQueue_LQ(Q1,T->rchild);
EnQueue_LQ(Q2,T->rchild);
}
}
TT=temp;
}