一、设计内容和要求
1.实现二叉树的2种构造方法(输入扩展二叉树的前序遍历序列构造二叉树和已知二叉树的前序、中序序列,构造此二叉树)
2.对二叉树进行前序、中序、后序和层次遍历;
4.求二叉树结点数、叶子结点和高度;
5.将二叉树所有结点的左右子树交换。
二、代码
头文件erchashu.h
#include <iostream.h>
#include<stdlib.h>
#define NUM 100
typedef char elemtype;
typedef struct BiNode{
elemtype data;
struct BiNode *lchild,*rchild;
}*BiTree;
源文件:erchashu.cpp
#include"iostream.h"
#include"erchashu.h"
//先序创建一个树
void CreatTree(BiTree &T)
{
elemtype ch;
cin>>ch;
if(ch == '#')
T = NULL;
else
{
if(!(T = new BiNode))//分配内存空间失败就退出
exit(0);
T->data = ch;