主题:请教大虾,先序建立二叉树,中后序输出
tb112
[专家分:30] 发布于 2005-05-23 10:56:00
求求大虾帮忙啊
回复列表 (共7个回复)
沙发
hong69112 [专家分:850] 发布于 2005-05-23 12:14:00
#include<stdio.h>
#include<stdlib.h>
typedef char datatype;
typedef struct node{
datatype data;
struct node *lchild,*rchild;
}bintnode;
typedef bintnode *bintree;
void createbintree(bintree *t)
{
char ch;
if((ch=getchar())==' ')
*t=NULL;
else{
*t=(bintnode *)malloc(sizeof(bintnode));
(*t)->data=ch;
createbintree(&(*t)->lchild);
createbintree(&(*t)->rchild);
}
}
void preorder(bintree t)
{
if(t) {printf("%c",t->data);
preorder(t->lchild);
preorder(t->rchild);
}
}
void main()
{
bintree tree;
createbintree(&tree);
preorder(tree);
}
这个是2叉树的前序建立和前序输出
你自己把输出改成中序和后序的就可以了
板凳
tb112 [专家分:30] 发布于 2005-05-24 08:28:00
十分感谢,给你30分
3 楼
hong69112 [专家分:850] 发布于 2005-05-30 12:17:00
呵呵!程序弄好了?
4 楼
tb112 [专家分:30] 发布于 2005-06-06 07:52:00
莫非你也是海大的?
5 楼
海涛 [专家分:0] 发布于 2005-06-08 09:24:00
看来大家的题目也差不多噶!哈哈
6 楼
hong69112 [专家分:850] 发布于 2005-06-08 19:30:00
海大的?
不知道啊,马上就要考试了啊
下个星期要考上机
呵呵
7 楼
月亮之上 [专家分:0] 发布于 2007-12-09 11:32:00
对不起,我是刚学编程的,你能告诉我怎样改成中序输出吗?谢谢(急)
我来回复