数据结构实验之二叉树二:遍历二叉树
来源:互联网 发布:高校大数据实验室 编辑:程序博客网 时间:2024/05/07 19:36
题目描述
已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并按中序和后序的方式遍历该二叉树。
输入
连续输入多组数据,每组数据输入一个长度小于50个字符的字符串。
输出
每组输入数据对应输出2行:
第1行输出中序遍历序列;
第2行输出后序遍历序列。
示例输入
abc,,de,g,,f,,,
示例输出
cbegdfacgefdba
#include <stdio.h>
#include <stdlib.h>
char st[55];
int i;
typedef struct node
{
int data;
struct node *lc;
struct node *rc;
}*BiTree;
BiTree creat()
{
char c;
BiTree T;
c = st[i++];
if(c==',')
T = NULL;
else
{
T = (BiTree)malloc(sizeof(BiTree));
T->data = c;
T->lc = creat();
T->rc = creat();
}
return T;
}
void visit(char c)
{
if(c)
printf("%c",c);
}
void Intrav(BiTree T)
{
if(T)
{
Intrav(T->lc);
visit(T->data);
Intrav(T->rc);
}
}
void Postrav(BiTree T)
{
if(T)
{
Postrav(T->lc);
Postrav(T->rc);
visit(T->data);
}
}
int main()
{
BiTree T;
while(scanf("%s",st)!=EOF)
{
i = 0;
T = creat();
Intrav(T);
printf("\n");
Postrav(T);
printf("\n");
}
return 0;
}
0 0
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- SDUT3341数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 3341数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 数据结构实验之二叉树二:遍历二叉树
- 银行卡四元素实名认证
- 深入浅出设计模式之模板方法模式
- 重置select select2下拉框为选中状态
- codeforces 706C-(简单DP)
- 时空上下文视觉跟踪(STC)算法的解读与代码复现
- 数据结构实验之二叉树二:遍历二叉树
- 家用漏电开关跳闸的原因
- CF#367(Div2)D. Vasiliy's Multiset (字典树)
- Struts 2
- redis(2.8)配置文件参数详解
- How to unblock an LDAP blocked user in Gitlab
- Fragment嵌套Fragment产生的问题
- 【杂谈】腾讯面试杂谈
- 2070 Fibbonacci Number