单项选择题
下面的算法实现了将二叉树中每一个结点的左右子树互换。addQ(Q,bt)为进队的函数,delQ(Q)为出队的函数,empty(Q)为判别队列是否为空的函数,空白处应填的内容是( )。
typedef struct node{
int data;
struct node*lchild,*rchild;
}btnode;
void exchange(btnode*bt){
btnode*p,*q;
if(bt){
addQ(Q,bt);
while(TEMPTY(Q)){
p=delQ(Q);
q=p->rchild;
p->rchild=p->lchild;
(
(1)
)=q;
if(p->lchild)
(
(2)
);
if(p->rchild)addQ(Q,p->rchild);
}
}
}
A.p->lchild,delQ(Q,p->lchild)
B.p->rchild,delQ(Q,p->lchild)
C.p->lchild,addQ(Q,p->lchild)
D.p->rchild,addQ(Q,p->lchild)