版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据结构实验报告实验题目: 第三次实验二叉树的应用 姓名: 刘创 学号: 132054137 班级: 1320541 系名: 计算机工程系 专业: 计算机科学与技术 指导老师: 刘海静 实验时间:2015年5月28日星期四 实验地点: 软件实验室 【实验概述】1.实验目的及要求目的:掌握二叉树的有关知识,存储太原工业学院机构图要求:存储二叉树; 遍历二叉树 计算二叉树的叶子,结点数数等2.实验原理二叉树应用原理3.实验环境(使用的软件)VC+6.0/VS2013【实验内容】1. 实验算法设计实验:使用二叉树存储太原工业学院机构; 2. 实验过程(源代码及描述、调试过程及分析)调试过程中,两个实
2、验没有出现太大的问题,理论联系实际,多时间去实践方可等心应手。实验代码: BinaryTree.cpp#include<iostream>#include<string.h>#include<string>using namespace std;typedef char ElemType; /数据类型typedef struct TREEstruct TREE *lTree; /左子树struct TREE *rTree; /右子树 char data40; /数据声明为字符数组Tree;void InitBinaryTree(Tree *tree); /初
3、始化二叉树void CreateBinaryTree(Tree *tree); /创建二叉树void PreTraverse(Tree *tree); /先序遍历二叉树int DepthTree(Tree *tree); /二叉树深度函数int LeafsTree(Tree *tree); /叶子个数函数void InitBinaryTree(Tree *tree) /初始化二叉树tree->lTree = NULL;/初始化数据tree->rTree = NULL;strcpy_s(tree->data, "0");void CreateBinaryTr
4、ee(Tree *tree)/创建树int n = 0, m = 0, i = 0;cout << "n->"char Data20;cin >> Data;strcpy_s(tree->data, Data);cout <<"""<<tree->data << ""(机构)是否有左子树(下属机构)(0:没有 1:有):"cin >> n;if (n = 1)Tree *lTree = (Tree*)malloc(sizeof
5、(Tree);tree->lTree = lTree;lTree->lTree = NULL;lTree->rTree = NULL;CreateBinaryTree(tree->lTree);cout <<"""<<tree->data << ""(机构)是否有右子树(并列机构)(0:没有 1:有):"cin >> i;if (i = 0);else if (i = 1)Tree *rTree = (Tree*)malloc(sizeof(Tree);tr
6、ee->rTree = rTree;rTree->lTree = NULL;rTree->rTree = NULL;CreateBinaryTree(tree->rTree);else if (n = 0)cout << """ << tree->data << ""(机构)是否有右子树(并列机构)(0:没有 1:有):"cin >> m;if (m = 0);else if (m = 1)Tree *rTree = (Tree*)malloc(sizeof
7、(Tree);tree->rTree = rTree;rTree->lTree = NULL;rTree->rTree = NULL;CreateBinaryTree(tree->rTree);void PreTraverse(Tree *tree) /先序遍历二叉树if (tree != NULL)cout << tree->data << " "if (tree->lTree != NULL)PreTraverse(tree->lTree);cout << "ntt"Pre
8、Traverse(tree->rTree);else if (tree->rTree != NULL)PreTraverse(tree->rTree);void InTraverse(Tree *tree)/中序遍历递归if (tree != NULL)if (tree->lTree != NULL)InTraverse(tree->lTree);cout << tree->data << " "InTraverse(tree->rTree);cout << "nt"else
9、if (tree->rTree != NULL)cout << tree->data << " "InTraverse(tree->rTree);elsecout << tree->data << " "void PostTraverse(Tree *tree)/后序遍历递归if (tree != NULL)if (tree->lTree != NULL)PostTraverse(tree->lTree);PostTraverse(tree->rTree);cout
10、 << tree->data << " "else if (tree->rTree != NULL)PostTraverse(tree->rTree);cout << tree->data << " "elsecout << tree->data << " "int DepthTree(Tree *tree) /二叉树深度函数int l, r;if (tree = NULL) return 0; /节点本身为空if (tree->
11、;lTree=NULL&&tree->rTree=NULL) return 1;/叶子结点l = DepthTree(tree->lTree);r = DepthTree(tree->rTree);return (l >= r ? l + 1 : r + 1);int LeafTree(Tree *tree)/叶子个数函数if (tree = NULL)return 0;else if (tree->lTree = NULL&&tree->rTree = NULL)return 1;return(LeafTree(tree-&
12、gt;lTree) + LeafTree(tree->rTree);int main(int argc, char *argv)system("color 1b");Tree tree;InitBinaryTree(&tree); /初始化二叉树cout << "请客户在->后输入机构的数据内容n(请输入机构名称,如:太原工业学院、计算机工程系、计科专业、班级等)"CreateBinaryTree(&tree); /创建二叉树cout << "先序遍历的结果为:n" PreTraverse(&tree); /先序遍历二叉树cout << "中序遍历的结果为:n"InTraverse(&tree); /中序遍历递归cout << "后序遍历的结果为:n"PostTraverse(&tree); /后序遍历递归cout << "n此二叉树深度为:" << DepthTre
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中国华电集团有限公司华电海外投资有限公司校园招聘(第二批)笔试参考题库及答案解析
- 2026甘肃兰州市红古区人民医院窑街分院招聘3人考试参考试题及答案解析
- 2026天津市蓟州区教育系统招聘教师82人笔试备考题库及答案解析
- 2025年天津公安警官职业学院单招职业适应性测试题库及答案解析
- 2026河南郑州惠济区迎宾路社区中心招聘中医医师2名笔试参考题库及答案解析
- 2026浙江衢州市龙游县创新咨询服务有限公司招聘合同制员工12人笔试备考题库及答案解析
- 2026首都医科大学附属北京天坛医院安徽医院招聘65人笔试备考试题及答案解析
- 2026辽东学院招聘高层次和急需紧缺人员12人(第一批)考试备考题库及答案解析
- 2026河北邯郸市大名县金滩中心卫生院公开招聘笔试备考题库及答案解析
- 2026青海西宁市城北区马坊社区卫生服务中心招聘1人笔试备考题库及答案解析
- GB/T 20663-2026蓄能压力容器
- 2026年春节后复工复产安全培训:筑牢安全防线护航开工大吉
- 2026年江西省高职单招数学试题及答案
- 2025幼儿园园务工作计划
- 国轩高科测评试题
- 2026年黑龙江伊春市高职单招语文考试试卷及答案
- 2025年R2移动式压力容器充装证考试题库及答案
- 中国儿童原发性免疫性血小板减少症诊断与治疗改编指南(2025版)
- 2026春统编版小学道德与法治五年级下册(全册)课时练习及答案(附教材目录)
- 2026年江苏城市职业学院江都办学点单招职业倾向性测试题库带答案
- 2026年郴州职业技术学院单招职业技能考试题库及答案详解一套
评论
0/150
提交评论