ZZULI 1210 二叉树(3)
来源:互联网 发布:微博域名怎么改 编辑:程序博客网 时间:2024/04/29 18:58
二叉树(3)
Time Limit:1000MS
Total Submit:24 Accepted:6
Description
按扩展的先序序列(即包括空结点,1表示空结点)输入二叉树的各结点。
你要完成的任务有三个
(1)建立二叉树
(2)按中序序列线索化二叉树
(3)输入一个结点元素值,输出它的前驱和后继。
(若该元素的前驱或后继为空,请用1代替)
Input
输入有1组数据。
数据的第一行为 :按扩展的先序序列输入二叉树的各结点。
数据的第二行为 一个整数n(0《n《20)。
接下来的n行,每行输入一个结点的名称。
Output
输出结果有n行,每行是对应输入结点的结果。
SampleInput
ABD111CE11F113AED
SampleOutput
B EA C1 B
Source
李老师
其实只要会建立二叉树,剩下的两题都不算太难,只是不明白为什么后两题的通过量那么低
这个题我想好多人都不明白线索化二叉树为何物,其实我当初也不明白,以为是很深奥的东西呢,后来百度了之后才发现其实他和先序遍历、中序遍历与后序遍历是一样的,着实让我纳闷了半天,既然一样为什么还起个那么深奥的名字,坑爹啊!
这里附带线索化二叉树的链接,大家可以看下:
http://hi.baidu.com/lewutian/blog/item/3d55abf3863d665b342acc78
代码如下:
#include<stdio.h>
#include<stdlib.h>
char str[1001];
int flag[1001];
int top,max;
typedef struct tree{
}node,*Lnode;
int m=sizeof(node);
Lnode newnode()
{
}
void build(Lnode p)
{
}
void look(Lnode p)
{
}
int main()
{