#include<iostream>
#include<stdlib.h>
#include<cmath>
using namespace std;
int len=0;
struct Stack
{
int s[1000];
int top;
};
struct BiTNode
{
char data;
BiTNode *LChild;
BiTNode *RChild;
};
void Create(BiTNode *&T)
{
char ch;
cin>>ch;
if(ch=='#')
T=NULL;
else
{
T=(BiTNode*)malloc(sizeof(BiTNode));
T->data=ch;
Create(T->LChild);
Create(T->RChild);
}
}
void PreOrder(BiTNode *T)
{
if(T!=NULL)
{
cout<<T->data;
PreOrder(T->LChild);
PreOrder(T->RChild);
}
}
void MidOrder(BiTNode *T)
{
if(T!=NULL)
{
MidOrder(T->LChild);
cout<<T->data;
MidOrder(T->RChild);
}
}
void PostOrder(BiTNode *T)
{
if(T!=NULL)
{
PostOrder(T->LChild);
PostOrder(T->RChild);
cout<<T->data;
}
}
void PreLeaf(BiTNode *T)
{
if(T!=NULL)
{
if(T->LChild==NULL&&T->RChild=
二叉树的基本操作
最新推荐文章于 2021-11-28 20:37:53 发布
本文深入探讨了二叉树的基本概念,包括插入、删除、遍历等操作,并通过实例详细解释了每种操作的实现过程,旨在帮助读者理解和掌握二叉树的核心知识。
摘要由CSDN通过智能技术生成