当前位置: 代码迷 >> C语言 >> 『求助』C语言实现二叉树基本操作
  详细解决方案

『求助』C语言实现二叉树基本操作

热度:153   发布时间:2007-12-06 00:58:49.0
『求助』C语言实现二叉树基本操作
【实验内容与要求】
问题描述:采用二叉链表作为存储结构,完成二叉树的建立和遍历操作。
基本要求:
(1)基于先序遍历的构造算法。输入是二叉树的先序序列,但必须在其中加入虚结点以示空指针的位置。假设虚结点输入时用空格字符表示。
(2)利用中序顺序遍历所建的二叉树,将遍历结果打印输出。

我写的程序
#include<stdio.h>
#define NULL 0

struct BiTree
{char data;
struct BiTree *ld,*rd;};

CreateBiTree(BiTree *T)
{
char ch;
scanf(&ch);
if(ch==' ') t=NULL;
else
{
if(!(T=(BiTree*)malloc(sizeof(BiTree)))) exit()
T.data=ch;
CreatBiTree(T.ld);
CreatBiTree(T.rd);
}
return OK;
}

InOrderprint(BiTree T)
{
BiTree Stack[255];
int top=0;
Stack[top++]=T;
if(Stack[0].data==' ')
printf("The BiTree is NULL!");
else
while(top>=0)
{
for(;T.ld.data!=' ';)
{
Stack[top++]=T.ld;
T=T.ld;
}
top--;
printf("%c",&T.data);
if(T.rd.data==' ') top--;
else{T=t.rd; top--};;
}
}

main()
{
BiTree *T;
printf("Please input the data by PreOrder:");
CreateBiTree(T);
printf("\nThe BiTree in InOrder is:") ;
InOrderprint(*T)
}


编译时提示
CreateBiTree(BiTree *T)
这行声明有错
不解
请各位指教
=。=!
搜索更多相关的解决方案: 二叉树  C语言  遍历  BiTree  结点  

----------------解决方案--------------------------------------------------------
我也在学数据结构
LZ问错地方 了
去数据结构区问吧
----------------解决方案--------------------------------------------------------

看好!这是C
----------------解决方案--------------------------------------------------------
LS
我对你无语了~~~
----------------解决方案--------------------------------------------------------
  相关解决方案