- 120
- 0
- 约3.01千字
- 约 9页
- 2018-11-19 发布于广东
- 举报
二叉树的性质与链式存储结构实验8报告.doc
芳
朱
帀
导号级姓 指学班
名:张杭俊
^7二叉树的性质与链式存储结构 实
【实验目的】
了解树结点和结点间关系的基本概念 了解树的结点访问的方法 掌握二叉树的链式存储结构 掌握二叉树结点的递归访问方法 掌扼二叉树的遍历
【实验内容]
.观察如图所示的二叉树并回答问题
1) 写出前序、中序和后序的遍历序列 前序:ABDRCFG
中序:DBEAEGC 后序:DEBGICA
2) 分别写出单支结点和叶子结点 单支结点:C、F
叶子结点:D、E、G
3) 以“#”补充所有结点的空分支
4)写出补充空分支后二叉树的前序遍历序列 前序:ABD##R##CE#G###
5)在工程BiTree中添加二叉树的中序或后序遍历接口,并在主函数中将 第(4)小题的遍历序列写入main函数的数组A□中进行验证
结果如下:
2.验证题
函数调用和返回动作发生的顺序
I E:\学习 握鉤试验\ 实验八\FEIDIGUI\bi\Debng\bi.
刖序遍历:ABDECFG 中序遍仿DBEAFGC 后序遍仿DEBGFCA
深虔:4…
Press any key to continue
调用顺序
root结点
返回顺序
返回值
1
A
9
3
2
B
5
2
3
D
3
1
4
NULL
1
0
5
NULL
2
0
6
NULL
4
0
7
C
8
1
8
NULL
6
0
9
NULL
7
0
调试过程:
名称
值
田 root
0x003b2e98
call
4
re
1
return
CXXOO17: Error: svmbol return not found ■
root-data
68,D,
3.计算题
仿照第(2)题,在main函数中,定义数组A[]= “ABD##E湘C#F?T :调用函数
CreateBTree_Pre (root, A):根据A□中的数据建立如图二叉树,调用并验证递 归函数int BTreeDepth (BTNode *root)计算该二叉树深度过程
函数调用和返回动作发生的顺序
调用顺序
root结点
返回顺序
返回值
1
A
13
3
2
B
7
2
3
D
3
1
4
NULL
1
0
5
NULL
2
0
6
E
6
1
7
NULL
4
0
8
NULL
5
0
9
C
12
2
10
NULL
8
0
11
F
11
1
12
NULL
9
0
13
NULL
10
0
调试过程:
名称
值
田 root
!0x002b2c60
call
5
re
3
return
⑴XX0017: Error: svmbol return not found
root-data
I66,B,
I
?
?
?
?
?
1
I
4.二叉树的非递归遍历
#头文件
#includeiostream
using namespace std ;
typedef char DataType;
typedef struct Node
{
DataType data; struct Node *left, *right;
JBTNode;
void Treelnit(BTNode *root);
void CreateBTree_Pre(BTNode *root, DataType Array门);
void PreOrder(BTNode *root);
void lnOrder(BTNode *root);
void PostOrder(BTNode *root);
int BTreeDepth(BTNode *root);
void ClearBTree(BTNode *root);
#函数
#includeBiTree.h
void TreelnitfBTNode *root)
{
root = NULL;
}
void CreateBTree_Pre(BTNode *root, DataType Array[])
{
static int count = 0 ; char item = Array[count]; count++;
if(item == #)
{
root = NULL; return;
}
else
root = new BTNode ; root-data = item; CreateBTree_Pre(root-left, Array); CreateBTree_Pre(root-right, Array);
}
}
void PreOrder(BTNode *root)
{
if(root != NULL)
{
cout? root-data; PreOrder(root-left); PreOrder(root-right);
原创力文档

文档评论(0)