函数题:二叉树的遍历
本题构造一个含3个结点的二叉树,输入的第一个结点为根结点,第二个结点为根结点的左儿子,第三个结点为根结点的右儿子,输出这个二叉树的先序、中序和后序序列。
### 函数接口定义:
c++
Bptr creat();/*构造3个结点的二叉树。
输入3个整数值,
输入的第一个值为根结点,
第二个值为根结点的左儿子,
第三个值为根结点的右儿子*/
void preorder(Bptr p);//先序遍历
void inorder(Bptr p);//中序遍历
void postorder(Bptr p);//后序遍历
其中 p 是用户传入的参数。
### 裁判测试程序样例:
c++
#include <stdio.h>
#include <malloc.h>
typedef struct node
{
int data;
struct node *Lson,*Rson;
}Bnode,*Bptr;
Bptr creat();
void preorder(Bptr p);//先序遍历
void inorder(Bptr p);//中序遍历
void postorder(Bptr p);//后序遍历
int main()
{
Bptr root=NULL;
root=creat();
preorder(root);
printf("\n");
inorder(root);
printf("\n");
postorder(root);
return 0;
}
/* 请在这里填写答案 */
### 输入样例:
in
1 2 3
### 输出样例:
out
1 2 3
2 1 3
2 3 1
答案:若无答案欢迎评论
### 函数接口定义:
c++
Bptr creat();/*构造3个结点的二叉树。
输入3个整数值,
输入的第一个值为根结点,
第二个值为根结点的左儿子,
第三个值为根结点的右儿子*/
void preorder(Bptr p);//先序遍历
void inorder(Bptr p);//中序遍历
void postorder(Bptr p);//后序遍历
其中 p 是用户传入的参数。
### 裁判测试程序样例:
c++
#include <stdio.h>
#include <malloc.h>
typedef struct node
{
int data;
struct node *Lson,*Rson;
}Bnode,*Bptr;
Bptr creat();
void preorder(Bptr p);//先序遍历
void inorder(Bptr p);//中序遍历
void postorder(Bptr p);//后序遍历
int main()
{
Bptr root=NULL;
root=creat();
preorder(root);
printf("\n");
inorder(root);
printf("\n");
postorder(root);
return 0;
}
/* 请在这里填写答案 */
### 输入样例:
in
1 2 3
### 输出样例:
out
1 2 3
2 1 3
2 3 1
答案:若无答案欢迎评论