#include "iostream"
#include "BiTree.h"
using namespace std;
void main()
{
BiTree<char> Tree(1);
while(1){
cout<<"\t\t 欢迎使用本系统!! "<<endl;
cout<<"\t\t######################################## "<<endl;
cout<<"\t\t# # "<<endl;
cout<<"\t\t# 1--创建一颗二叉树并显示 # "<<endl;
cout<<"\t\t# 2--遍历二叉树 # "<<endl;
cout<<"\t\t# 3--查询二叉树的深度和结点数 # "<<endl;
cout<<"\t\t# 4--查询每层结点数 # "<<endl;
cout<<"\t\t# 5--查找两节点P和Q的最近共同祖先 # "<<endl;
cout<<"\t\t# 6--退出 # "<<endl;
cout<<"\t\t# # "<<endl;
cout<<"\t\t######################################## "<<endl;
cout<<"请输入你的选择:";
char ch;
cin>>ch;
switch(ch){
case '1':{
cout<<"请输入二叉树的前序遍历:"<<endl;
cout<<"(以#作为分支结尾,例如:AB##C##)"<<endl;
Tree.creat();
cout<<Tree;
cout<<endl;
}break;
case '2':{
cout<<endl;
cout<<"前序遍历为:";
Tree.PreOrder();
cout<<endl;
cout<<"中序遍历为:";
Tree.inorder();
cout<<endl;
cout<<"后序遍历为:";
Tree.PostOrder();
cout<<endl;
cout<<"层序遍历为:";
Tree.levelorder();
cout<<endl;
cout<<endl;
}break;
case '3': {
cout<<"树的深度为:"<<Tree.depth()<<endl;
cout<<"树的结点数:"<<Tree.count()<<endl;
cout<<endl;
}break;
case '4':{
Tree.LevelNum();
cout<<endl;
}break;
case '5':{
char ch1,ch2;
cout<<"请输入P数据信息:";
cin>>ch1;
cout<<"请输入Q数据信息:";
cin>>ch2;
cout<<ch1<<"和"<<ch2<<"的最近共同祖先是"<<Tree.leastCommanAncestor(ch1,ch2)<<endl;
cout<<endl;
}break;
case '6':return;break;
default: cout<<"请输入正确的选择!!!"<<endl;break;
}
}
}
数据结构课程设计(二叉树的遍历)
需积分: 49 181 浏览量
2012-04-29
17:34:50
上传
评论 2
收藏 989KB ZIP 举报
qq42628518
- 粉丝: 7
- 资源: 10
最新资源
- 基于SkyTra-S1216F8-BD模块gps串口模块AD09设计设计硬件(原理图+PCB)文件.zip
- 用OpenGL实现的windows版的魔方,最终会实现N阶魔方的自动还原算法.zip
- Python实现基于CNN+LSTM的网络流量检测系统源码+文档说明(高分课程设计).zip
- opengl+imgui的一个小框架.zip
- 1-楼子沟10000地形地质图.zip
- 基于安国AU6438读卡器PADS9.5设计硬件(原理图+PCB)文件.zip
- 基于python+flask+mysql实现的豆瓣电影可视化系统源代码+数据库(高分项目).zip
- 基于pytorch卷积神经网络算法识别猫狗图片项目源码+模型+数据集+使用说明.zip
- 基于C++ QT实现的学生信息管理系统源码+项目说明.zip
- IMG20240425152027.jpg
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈