void InorderTraversal( BinTree BT ){
if(BT){
InorderTraversal(BT->Left);
printf(" %c",BT->Data);
InorderTraversal(BT->Right);
}
}
void PreorderTraversal( BinTree BT ){
if(BT){
printf(" %c",BT->Data);
PreorderTraversal(BT->Left);
PreorderTraversal(BT->Right);
}
}
void PostorderTraversal( BinTree BT ){
if(BT){
PostorderTraversal(BT->Left);
PostorderTraversal(BT->Right);
printf(" %c",BT->Data);
}
}
void LevelorderTraversal( BinTree BT ){
if(!BT)
return;
BinTree p=BT,q[100];
int front=0,rear=-1;
q[++rear]=p;
while(front<=rear){
p=q[front++];
printf(" %c",p->Data);
if(p->Left){
q[++rear]=p->Left;
}
if(p->Right){
q[++rear]=p->Right;
}
}
}
6-9 二叉树的遍历 (25 分)
最新推荐文章于 2024-01-15 19:24:28 发布
这篇博客详细介绍了二叉树的四种常见遍历方法:中序遍历(InOrder)、前序遍历(PreOrder)、后序遍历(PostOrder)和层次遍历(Levelorder)。通过代码示例展示了如何实现这些遍历算法,帮助读者理解并掌握二叉树遍历在数据结构中的应用。
923

被折叠的 条评论
为什么被折叠?



