全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据结构实验报告班级: 姓名: 学号: E-mail: 日期:实验题目: 建立二叉排序树,并中序遍历输出,输入一个关键字进行查找。实验目的:熟悉并掌握二叉排序树的建立及遍历输出以及非递归查找。实验内容:输入一组数据,建立二叉排序树,并中序遍历输出,输入一个关键字进行查找。一、需求分析1、本程序中,输入一组数据,然后建立一棵二叉排序树存储这些元素,再中序遍历输出检验树建立是否正确,中序遍历输出的次序应为从小到大排列,然后输入一个关键字查找,输出查找成功与否。2、演示程序以用户和计算机的对话方式执行,即在计算机终端上显示“提示信息”之后,由用户在键盘上输入相应数据。3、程序所能达到的功能:建立二叉排序树,并中序遍历输出,输入一个关键字进行查找。4、测试数据: 输入待排序的数据:10 15 20 5 10 30 9 7 13 45 2 -1(-1是输入结束标志) 中序遍历二叉树输出为:2 5 7 9 10 10 13 15 20 30 45 输入要查找的元素:7 输出:查找成功二 概要设计为了实现上述操作,应以二叉链表为存储结构,中序非递归遍历时以栈为中间存储结构。该程序有四个函数分别为:主函数,插入函数,输出函数,查找函数。主函数通过调用其他三个函数实现上述功能。三 详细设计1、定义节点类型typedef struct node int data; struct node *lc; struct node *rc;BiTNode,*BiTree;2、主函数 定义二叉排序树根节点bt,以及整形变量,x待插入数据变量,k查找关键字变量。读取输入的数据存入x中,如果不是结束标志-1就调用插入函数将x插入到二叉排序树中,否则就执行后续操作。然后调用输出函数中序输出二叉排序树。输出待查找的数据存入k中。调用查找函数进行查找。根据返回的指针判断查找成功与否。3、插入函数 定义指向待插入节点指针q以及指向当前节点指针p,以及整形变量i用于判断插入成功与否。 q指向新申请节点,并将待插入数据存入数据项中。当树为空时,直接将节点插入到根节点。否则待插入节点与根节点进行比较:如果小于根节点,沿左孩子链进行比较,否则沿右孩子链进行比较。直到终端插入该节点。4、中序遍历函数 当前结点等于根结点.初始化栈。当栈不空或者当前结点不空时while循环: 当p不空时进栈,然后沿左孩子路径访问,直至p为空; 此时让p等于栈顶指针,输出p的数据域的值; 当输出了父结点后沿右孩子路径访问。5、查找函数 定义指向当前节点指针p,并使p指向根节点。当p不空且还未查找到关键字与根节点进行比较。若大于根节点沿右孩子链查找,否则沿左孩子链进行查找。返回指针p。四 使用说明、测试分析及结果1、测试结果 输入待排序的数据:10 15 20 5 10 30 9 7 13 45 2 -1(-1是输入结束标志) 中序遍历二叉树输出为:2 5 7 9 10 10 13 15 20 30 45 输入要查找的元素:7 输出:查找成功符合预期设想3运行界面五、实验总结 在进行这次试验前,我首先写了实验预习报告,用了大概半小时时间写出了解决此问题的大体算法,并且用了半小时时间把具体的设计写了出来,要用了一个小时进行了调试。在进行测试的时候,发现查找的元素不在二叉树中出来的结果是查找成功,最后检查发现时判断条件的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030年中国靶向蛋白降解(TPD)市场深度分析及发展前景研究预测报告
- 【历史时序】2025-2026学年七年级历史上学期时间轴专项卷(统编版)
- 人教版四年级音乐上册第三单元《我们的田野》教学简案
- 2026-2031年中国磷酸氟达拉滨市场调研分析及投资战略研究报告
- 2026中国工商银行贵州省分行校园招聘470人备考题库附答案详解(培优a卷)
- 2026中国工商银行工银科技校园招聘备考题库及完整答案详解一套
- 2025农银报业有限公司社会招聘3人备考题库有完整答案详解
- 2025重庆大足区人民政府龙岗街道公益岗招聘3人备考题库及一套完整答案详解
- 2025陕西西安户县海丝村镇银行高校见习生招聘备考题库及参考答案详解一套
- 2025下半年虹口区凉城新村街道见习社区工作者(辅工)公开招聘11人备考题库及答案详解(基础+提升)
- 内分泌危象之垂体危象优秀课件
- 深圳市失业人员停止领取失业保险待遇申请表样表
- 管道风险评估单
- 工序工作面移交台账(完成)
- (完整word版)高考英语作文练习纸(标准答题卡)
- 机电安装竣工全部表格
- 金属着色技术PPT
- 单位用餐券模板(可编辑修改)
- 《提高内墙饰面砖铺贴施工合格率》QC成果汇报
- .稀贵金属冶金学复习题
- (义务教育英语课程标准(2022年版))贯彻落实(英语)新课标PPT新版义务教育英语课程标准(2022年版)课件
评论
0/150
提交评论