资源描述:
《二叉树的遍历实验报告_数据结构》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、实验报告
2、
3、实验名称二叉树的遍历课程名称算法与数据结构试验
4、
5、专业班级:信息管理信息系统学号:20907144实验日期:20101201姓名:慕鑫鑫一、实验名称:二叉树的遍历二、实验目的综合应用所学的知识分析问题、解决问题,学会用建立二叉树并对其进行遍历,提高实际编程能力及程序调试能力。三、实验要求建立一个二叉树并对其进行遍历(先序,中序,后序)四、实验内容1、问题描述:建立一个二叉树,并分别用前序、中序、后序遍历该二叉树。2、说明:输入数据:1,2,3,0,0,4,5,0,0,6,7,0,0,0,8,9,0,0
6、,10,11,12,0,0,13,0,0,14,0,0其中“0”表示空子树。输出数据:先序:1,2,3,4,5,6,7,8,9,10,11,12,13,14。中序:3,2,5,4,7,6,1,9,8,12,11,13,10,14。后序:3,5,7,6,4,2,9,12,13,11,14,10,8,1。五、实验仪器与设备计算机,JDK,记事本六、实验原理建立一个二叉树,利用递归的方法实现对该二叉树的前序,中序,后序的遍历,并输出遍历结果。七、实验程序及结果#include#include7、io.h>#includeusingnamespacestd;typedefstructbtnode{intdata;btnode*Lchild,*Rchild;}*Btnode;voidCreat(Btnode&t){intch;cin>>ch;if(ch==0)t=NULL;else{btnode*p=newbtnode;p->data=ch;t=p;Creat(t->Lchild);Creat(t->Rchild);}}voidPreorder(Btnode&p){if(p!=NULL){
8、cout<data<<",";Preorder(p->Lchild);Preorder(p->Rchild);}}voidMidorder(Btnode&p){if(p!=NULL){Midorder(p->Lchild);cout<data<<",";Midorder(p->Rchild);}}voidFolorder(Btnode&p){if(p!=NULL){Folorder(p->Lchild);Folorder(p->Rchild);cout<data<<",";}}voidma
9、in(){btnode*head=newbtnode;cout<<"请输入数据:";Creat(head);cout<<"前序遍历:";Preorder(head);cout<