数据结构实验3 二叉树层次遍历

数据结构实验3 二叉树层次遍历

ID:11592827

大小:316.50 KB

页数:21页

时间:2018-07-12

数据结构实验3 二叉树层次遍历_第1页
数据结构实验3 二叉树层次遍历_第2页
数据结构实验3 二叉树层次遍历_第3页
数据结构实验3 二叉树层次遍历_第4页
数据结构实验3 二叉树层次遍历_第5页
资源描述:

《数据结构实验3 二叉树层次遍历》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、数据结构实验报告二〇一二年数据结构《实验3》实验报告实验项目3:二叉树层次遍历学  号姓  名课程号实验地点指导教师时间评语:按时完成实验;实验内容和过程记录完整;回答问题完整、正确;实验报告的撰写认真、格式符合要求;无抄袭的行为。成绩教师签字二叉树从左至右,从上至下层次遍历1、预习要求:二叉树结构定义和层次遍历。2、实验目的:(1)了解二叉树结构层次遍历概念;(2)理解二叉树二种不同层次遍历过程;(3)掌握二叉树层次遍历算法程序。3、实验内容及要求:(1)建立包含10个结点的二叉树(树结构和数据元素的值由自己设定);(2)完成二叉树从左至右,从上至下层次遍历程序;(3

2、)给出程序和遍历程序的结果。4、实验设备(环境)及要求硬件:支持IntelPentiumⅡ及其以上CPU,内存128MB以上、硬盘1GB以上容量的微机。软件:配有Windows98/2000/XP操作系统,安装VisualC++。5、实验时间:10学时6、该文档的文件名不要修改,存入<学号><姓名>命名的文件夹中7、该表中的数据只需填空,已有内容不要修改实验结果(运行结果界面及源程序,运行结果界面放在前面):数据结构实验报告二〇一二年数据结构实验报告二〇一二年数据结构实验报告二〇一二年#include#include#incl

3、ude#include#defineSTUDENTETypestructSTUDENT{charnumber[8];charname[8];charsex[3];intage;charplace[20];};structBinaryTreeNode{ETypedata;BinaryTreeNode*LChild;BinaryTreeNode*RChild;};structQType{BinaryTreeNode*ptr;};structQueue{QType*element;intfront;intrear;intmaxsize;};

4、structNode_Ptr{BinaryTreeNode*ptr;};voidCreatQueue(Queue&Q,intMaxQueueSize){//创建队列Q.maxsize=MaxQueueSize;数据结构实验报告二〇一二年Q.element=newQType[Q.maxsize+1];Q.front=0;Q.rear=0;}boolIsEmpty(Queue&Q){//判断队列是否为空if(Q.front==Q.rear)returntrue;returnfalse;}boolIsFull(Queue&Q){//判断队列是否为满if(Q.front==(Q

5、.rear+1)%(Q.maxsize+1))returntrue;returnfalse;}boolGetFront(Queue&Q,QType&result){//取出队头元素if(IsEmpty(Q))returnfalse;result=Q.element[(Q.front+1)%(Q.maxsize+1)];returntrue;}boolGetRear(Queue&Q,QType&result){//取出队尾元素if(IsEmpty(Q))returnfalse;result=Q.element[Q.rear];returntrue;}boolEnQueue

6、(Queue&Q,QType&x){//元素进队if(IsFull(Q))returnfalse;Q.rear=(Q.rear+1)%(Q.maxsize+1);Q.element[Q.rear]=x;returntrue;}boolDeQueue(Queue&Q,QType&result){//元素出队if(IsEmpty(Q))returnfalse;Q.front=(Q.front+1)%(Q.maxsize+1);result=Q.element[Q.front];数据结构实验报告二〇一二年returntrue;}BinaryTreeNode*MakeNode(

7、EType&x){//构造节点BinaryTreeNode*ptr;ptr=newBinaryTreeNode;if(!ptr)returnNULL;ptr->data=x;ptr->LChild=NULL;ptr->RChild=NULL;returnptr;}voidMakeBinaryTree(BinaryTreeNode*root,BinaryTreeNode*left,BinaryTreeNode*right){//构造二叉树之间的关系root->LChild=left;root->RChild=right;}voidOutpu

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。