typedef int data_t
typedef struct node_t
{
data_t data;
struct node_t *lchild, *rchild;
}bitree;
bitree_t *root;
/*先序遍历
若二叉树为空树,则空操作,否则
访问根结点,
先序遍历左子树
先序遍历右子树
*/
void preOrder(bitree *r)
{
if(r == NULL)
{
return ;
}
printf("%d",r->data);
preOrder(r->lchild);
preOrder(r->rchild);
}
/*
中序遍历算法
若二叉树为空树,则空操作,否则
中序遍历左子树
访问根结点,
中序遍历右子树
*/
void inOrder(bitree *r)
{
if(r==NULL)
{
return;
}
inOrder(r->lchild);
printf("%d",r-data);
inOrder(r->rchild);
}
/*
后续遍历算法
若二叉树为空树,则空操作,否则
后续遍历左子树
后续遍历右子树
访问根结点;
*/
void postOrder(bitree *r)
{
if(r==NULL)
{
return;
}
postOrder(r->lchild);
postOrder(r->rchild);
printf("%d",r->data);
}
二叉树的遍历和面试题
最新推荐文章于 2024-07-22 22:12:00 发布