#include "BiTree.h"
#include <iostream>
using namespace std;
int main()
{
cout << "请输入二叉树的前序遍历序列(#表示空节点):" << endl;
BiTree<char>T; //定义对象变量T
cout << "前序遍历:";
T.PreOrder();
cout << "\n中序遍历:";
T.InOrder();
cout << "\n后序遍历:";
T.PostOrder();
cout << "\n层序遍历:";
T.LevelOrder();
cout << "\n二叉树的深度:";
cout<<T.GetDepth();
cout << "\n【交换二叉树所有结点的左右子树】";
T.SwapSubTrees();
cout << "\n层序遍历:";
T.LevelOrder();
cout << "\n二叉树叶子结点总数:";
cout<<T.CountLeaves();
cout << "\n前序次序打印二叉树的叶子结点:";
T.PrintLeafNodesInPreOrder();
cout << "\n二叉树的最大宽度:";
cout << T.GetMaxWidth();
cout << "\n非递归的方式先序遍历:";
T.PreOrderTraversal();
cout << "\n【释放空间】";
T.~BiTree();
return 0;
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
1.内容概要: (1)实验目的: 1)熟练掌握二叉链的存储特点; 2)熟练掌握二叉树的基本操作; 3)熟练掌握基于二叉链的二叉树操作算法实现; 4)能灵活使用二叉树解决具体的问题。 (2)实验内容: 1)定义二叉链类,实现二叉树的基本操作算法; 2)在主函数中定义对象,并调用成员函数,验证二叉链的基本操作。具体包括: a.建立二叉链存储的二叉树 b.遍历二叉树:前序、中序、后序和层序 c.求二叉树的深度 d.交换二叉树所有结点的左右子树 e.统计二叉树叶子结点的个数 f.前序次序打印二叉树的叶子结点 g.计算二叉树的最大宽度。即结点数目最多的那一层的结点个数 h.非递归的方式先序或者后序遍历二叉树 注:操作算法可不局限于以上内容。 2.适用人群: 数据结构与算法初学者;C++编译基本掌握 3.使用场景: 数据结构与算法实验
资源推荐
资源详情
资源评论
收起资源包目录
二叉树实验.zip (2个子文件)
二叉树实验
BiTree.cpp 839B
BiTree.h 6KB
共 2 条
- 1
资源评论
鸿·蒙
- 粉丝: 628
- 资源: 19
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功