《数据结构》实验报告
班级:姓名:学号: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
{