数据结构二叉树前中后序非递归遍历.doc

数据结构二叉树前中后序非递归遍历.doc

ID:56922151

大小:128.00 KB

页数:19页

时间:2020-07-24

数据结构二叉树前中后序非递归遍历.doc_第1页
数据结构二叉树前中后序非递归遍历.doc_第2页
数据结构二叉树前中后序非递归遍历.doc_第3页
数据结构二叉树前中后序非递归遍历.doc_第4页
数据结构二叉树前中后序非递归遍历.doc_第5页
资源描述:

《数据结构二叉树前中后序非递归遍历.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

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

2、硬件:支持IntelPentiumⅡ及其以上CPU,内存128MB以上、硬盘1GB以上容量的微机。软件:配有Windows98/2000/XP操作系统,安装VisualC++。5、实验时间:10学时6、该文档的文件名不要修改,存入<学号><姓名>命名的文件夹中7、该表中的数据只需填空,已有内容不要修改实验结果(运行结果界面及源程序,运行结果界面放在前面):依次是前序,中序,后序遍历的截屏#defineSTUDENTEType#include#include#include#include#i

3、nclude//二叉树链式结构定义structSTUDENT{charname[10];charnumber[12];charplace[10];charsex[3];intage;};structBinaryTreeNode{ETypedata;BinaryTreeNode*LChild;BinaryTreeNode*RChild;};typedefBinaryTreeNodeBinaryTree;//堆栈结构定义structSType{BinaryTreeNode*ptr;boolstatus;};structStack{SType*eleme

4、nt;inttop;intMaxsize;};structNode_Ptr{BinaryTreeNode*ptr;};voidDigitalToString(charstr[],intn){chartemp;chark=1;inti=0;while(n&&i<80){k=n%10+48;n=n/10;str[i]=k;i++;}str[i]='';intlen=strlen(str);for(i=0;i

5、k&S,intMaxStackSize){//构造一个最大容量为MaxStackSize的堆栈S.Maxsize=MaxStackSize;S.element=newSType[S.Maxsize];S.top=-1;}boolIsEmpty(Stack&S){//判断堆栈是否为空if(S.top==-1)returntrue;returnfalse;}boolIsFull(Stack&S){//判断堆栈是否为满if(S.top>=S.Maxsize-1)returntrue;elsereturnfalse;}boolGetTop(Stack&S,SType&resul

6、t){//返回堆栈S中栈顶元素if(IsEmpty(S))returnfalse;result=S.element[S.top];returntrue;}boolPop(Stack&S,SType&result){//将S栈顶的值取至result中,返回出栈后的状态if(IsEmpty(S))returnfalse;result.ptr=S.element[S.top].ptr;result.status=S.element[S.top].status;S.top--;returntrue;}boolPush(Stack&S,SType&result){//result

7、进s栈,返回进栈后的状态值if(IsFull(S))returnfalse;S.top++;S.element[S.top]=result;//S.element[S.top].status=result.status;returntrue;}//构造一棵二叉树BinaryTree*MakeNode(EType&x){//构造节点BinaryTree*ptr;ptr=newBinaryTreeNode;if(!ptr)returnNULL;ptr->data=x;ptr->LChild=NULL;ptr->RChild=NULL;retu

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

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

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