数据结构实验报告二叉树.doc
《数据结构实验报告二叉树.doc》由会员分享,可在线阅读,更多相关《数据结构实验报告二叉树.doc(10页珍藏版)》请在课桌文档上搜索。
1、-实 验 报 告实验名称二叉树实验评分:实验课时4课时实验地点综合楼E405实验时间2016年4月 24日 星期三 第5周实验目的及要求实验目的:通过序列构造二叉树的实验,进一步熟悉二叉树遍历及构造二叉树的过程,掌握根本知识点,发现理论学习中的缺乏;理清学习脉络;能独立思考,根据具体的序列组织数据,合理显示二叉树。实验要求:1用树形构造画出一棵二叉树在结论中画出,采用凹入表示法和括号表示确输出该树。 2分析该二叉树的先序遍历、中序遍历和后序遍历的结果。3根据二叉树的根本运算,设计先序遍历和中序遍历或者中序遍历和后序遍历,确定二叉树的算法。4在不改变原有二叉树构造的条件下,将二叉树左右孩子进展交
2、换,并采用凹入表示法和括号表示法输出原有二叉树及交换子树后的二叉树。实验设备软件、硬件及耗材软件环境:Win7 microsoft visual6+硬件环境:intel core i5 cpu,4G存,64位操作系统实验容算法、程序、步骤、方法及数据记录实验容算法、程序、步骤、方法及数据记录实验容算法、程序、步骤、方法及数据记录实验容算法、程序、步骤、方法及数据记录一,源代码1:头文件#include#include#define ma*size 100typedef char elemtype;typedef struct nodeelemtype data;struct node *lch
3、ild;struct node *rchild;btnode;e*tern void createbtnode(btnode *&b,char *str);e*tern void dispbtnode(btnode *b);e*tern void destroybtnode(btnode *&b);e*tern void preorder(btnode *b);e*tern void inorder(btnode *b);e*tern void postorder(btnode *b);e*tern btnode *createbt1(char *pre,char *in,int n);e*t
4、ern btnode *createbt2(char *post,char *in,int n,int m);e*tern void dispbtnode1(btnode *b);e*tern btnode * revers(btnode *b);e*tern btnode *rchildnode(btnode *p);e*tern btnode *lchildnode(btnode *p);二源代码2:主函数:包括括号表示法,凹入表示法以及根据先序,中序确定二叉树。#include#includebtnodes.hvoid main()btnode *b;createbtnode(b,A(B
5、(D,E(H(J,K(L,M(,N),C(F,G(,I);printf(二叉树的根本运算入下:n);printf(1输出二叉树:);dispbtnode(b);printf(n);printf(先序遍历序列:);preorder(b);printf(n);printf(中序遍历序列:);inorder(b);printf(n);printf(后序遍历序列:);postorder(b);printf(n);elemtype pre=ABDEHJKLMNCFGI;elemtype in=DBJHLKMNEAFCGI;b=createbt1(pre,in,14);printf(先序序列:%sn,pr
6、e);printf(中序序列:%sn,in);printf(先序中序构造一棵二叉树b:n);printf(括号表示法:);dispbtnode(b);printf(n);printf(凹入表示法:n);dispbtnode1(b);printf(nn);printf(交换左右孩子后的二叉树为:n);createbtnode(b,A(B(D,E(H(J,K(L,M(,N),C(F,G(,I);revers(b);dispbtnode1(b);printf(7)释放二叉树bn);destroybtnode(b);3、 源代码3:功能块1) 根据根据先序,中序确定二叉树。以及凹入法表示#includ
7、e btnodes.hbtnode *createbt1(char *pre,char *in,int n)btnode *s;char *p;int k;if(ndata =*pre;for(p=in;plchild =createbt1(pre+1,in,k);s-rchild =createbt1(pre+k+1,p+1,n-k-1);return s;void dispbtnode1(btnode *b)btnode *stma*size,*p;int levelma*size2,top=-1,n,i,width=4;char type;if(b!=NULL)top+;sttop=b;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 实验 报告 二叉
链接地址:https://www.desk33.com/p-7597.html