树和二叉树

来源:百度知道 编辑:UC知道 时间:2024/05/16 06:13:01
层序遍历二叉树

void TraverseBTree(BTreeNode* BT)
{
const MaxLength=30;
BTreeNode* Q[MaxLength];
int front=0,rear=0;
BTreeNode*p;
if(BT!=NULL){
rear=(rear+1)%MaxLength;
Q[rear]=BT;
}
while(front!=rear)
{
front=(front+1)%MaxLength;
p=Q[front];
cout<<p->data<<' ';
if(p->left!=NULL)
{
rear=(rear+1)%MaxLength;
Q[rear]=p->left;
}
if(p->right!=NULL)
{
rear=(rear+1)%MaxLength;
Q[rear]=p->right;
}
}
}