我要做数据结构的课程设计:线索二叉树的遍历操作,各位高手帮帮忙

来源:百度知道 编辑:UC知道 时间:2024/05/22 19:49:06
现在已经建立二叉树,只需先序,后序,中序遍历了,因为线索不能用栈操作,只能用链表操作啊,所以想要一个先序或是后序的代码。可以帮忙么?

#include<iostream.h>
#include <stdio.h>
#include <stdlib.h>
typedef struct node {
char data;
struct node *lchild,*rchild;//
}BiTNode,*BiTree;
void CreatBiTree(BiTree &T)
{
char ch;
ch=getchar();
if (ch == ' ')
T = 0;
else {
T=(BiTNode*)malloc(sizeof(BiTNode));
T->data=ch;//生成根节点
CreatBiTree(T->lchild);//构造左子树
CreatBiTree(T->rchild);//构造右子树
}
}
void preorder(BiTree T)//前序遍历
{
if (T!=NULL){
printf ("%c",T->data);
preorder(T->lchild);
preorder(T->rchild);
}
}
void inorder(BiTree T)//中序遍历
{
if (T!=NULL){
inorder(T->lchild);
printf ("%c",T->