数据结构__课程实验报告
一、目的(本次实验所涉及并要求掌握的知识点)
1.使用递归法与先序遍历建立二叉树
2. 使用递归法对前面建立的二叉树进行先序、中序、后序遍历。
3.使用递归法统计该树的深度
4 使用递归法统计该树的叶子数
5.层序遍历二叉树
二、实验内容与设计思想(设计思路、主要数据结构、主要代码结构、)
建立二叉树:
typedef struct BiTNode{
char data; //数据域
struct BiTNode *lChild, *rChlid; //左右子树域
}BiTNode, *BiTree;
void CreatBiTree(BiTree &T)
{
char ch;
cin >> ch;
if (ch == '#')
T = NULL;
else
{
if (!(T = (BiTNode *)malloc(sizeof(BiTNode))))
exit(-1);
T->data = ch;
CreatBiTree(T->lChild);
CreatBiTree(T->rChlid);
}
}
先序遍历:
void PreOrderTraverse(BiTree T)
{
if (T == NULL)
return;
cout<< T->data<<endl;
PreOrderTraverse(T->lChild);