想问一下这段代码的错误,要怎么修改呢?这是二叉树的层次遍历。
树的结构定义为
typedef struct TNode *Position;
typedef Position BinTree;
struct TNode{
ElementType Data;
BinTree Left;
BinTree Right;
};
层次遍历
#define Max 100
void LevelorderTraversal( BinTree BT ){
int Q[Max];
int f,r;
f=r=0;
Q[r++]=BT;
BinTree T=NULL;
while(f<r){
T=Q[f++];
printf("%d",T->Data);
if(BT->Left){
Q[r++]=T->Left;
}
if(BT->Right){
Q[r++]=T->Right;
}
}
}