一、实验目的
1.熟练理解树和二叉树的相关概念,掌握存储结构和相关操作的实现
2.掌握树的顺序结构的实现
3.学会运用树的知识解决实际问题
二、实验内容
自己确定一个二叉树(树结点类型、数目和结构自定)利用顺序结构方法存储。实现树的结构,并完成:
(1)层序输出结点数据;
(2)以合理的格式,输出各个结点和双亲、孩子结点信息;
(3)输出所有的叶子结点信息;
(4)分析你的算法对于给定的二叉树的存储效率。
三、实验步骤
1 假定二叉树按层序输出数据为abcdefghijk,结点的数据类型为字符型、
2.当输出结点的孩子信息时,必须保证结点非叶子,所以如m为总的结点数,则非叶子数为m/2;当输出结点的双亲时,根无双亲,所以不应包含在内;当输出所有结点的信息时应按层序输出。
3.完整程序为
#include <iostream>
using namespace std;
const int m=11;
class Tree{
public:
void in(char b[]);
void show();
void showre();
void showye();
private:
char a[m];
};
void Tree::in(char b[]){
for(int i=0;i<m;i++)
a[i]=b[i];
}
void Tree::show(){
for(int i=0;i<m;i++)
cout<<a[i]<<" ";
cout<<endl;
}
v

这篇博客旨在深入理解二叉树的概念,通过顺序结构实现二叉树的存储。实验内容包括创建自定义二叉树,进行层序输出节点数据、显示节点的双亲和孩子信息,以及输出所有叶子节点。博主详细介绍了实验步骤,强调了在处理非叶子节点和根节点的特殊情况,并讨论了算法的存储效率分析。
最低0.47元/天 解锁文章
6377

被折叠的 条评论
为什么被折叠?



