中国石油大学数据结构上机实验6

中国石油大学数据结构上机实验6

ID:27676063

大小:95.89 KB

页数:13页

时间:2018-12-05

中国石油大学数据结构上机实验6_第1页
中国石油大学数据结构上机实验6_第2页
中国石油大学数据结构上机实验6_第3页
中国石油大学数据结构上机实验6_第4页
中国石油大学数据结构上机实验6_第5页
资源描述:

《中国石油大学数据结构上机实验6》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、《数据结构》实验报告学号2015011512姓名胡明禹专业数学与应用数学时间2018.5.8一、实验题目实验6二叉树的遍历二、实验目的1.掌握二叉树的存储思想与建立算法2.掌握二叉树各种遍历方法的实现思想3.实现二叉链表的递归遍历算法与非递归遍历算法三、算法设计分析(一)实验内容1.从键盘输入数据,建立一颗含有n个结点的二叉树2.从对二叉树进行先序,中序和后序遍历的递归算法实现,输出遍历序列3.实现先序遍历或中序遍历的非递归算法实现(二)总体设计此处给出主要函数功能、及函数间调用关系的的描述。例如:①先序创建二叉树函数②先序遍历函数③屮序遍历函数④后序遍历函数⑤前序遍历非递

2、归算法⑥中序遍历非递归算法其功能描述如下:(1)主函数:统筹调用各个阁数以实现相应功能voidmain()(2)①先序创建二叉树StatusCreateBiTree(BiTree&T){charch;scanf("%c",&ch);if(ch=='■)T=NULL;else{if(!(T=(BiTNode*)malloc(sizeof(BiTNode))))exit(OVERFLOW);T->data=ch;CreateBiTree(T->lchild);CreateBiTree(T->rchild);}returnOK;}②先遍历StatusPreOrderTravers

3、e(BiTreeT,Status(*Visit)(TEIemTypee)){if(T){if(Visit(T->data))if(PreOrderTraverse(T->lchild,Visit))if(PreOrderTraverse(T->rchild,Visit))returnOK;returnERROR;}elsereturnOK;}©中序遍历StatuslnOrderTraverse(BiTreeT,Status(*Visit)(TEIemTypee)){if⑴{if(lnOrderTraverse(T->lchild,Visit))if(Visit(T->dat

4、a))if(lnOrderTraverse(T->rchild,Visit))returnOK;returnERROR;}elsereturnOK;}④后序遍历函数StatusPostOrderTraverse(BiTreeT,Status(*Visit)(TEIemTypee)){if(T){if(PostOrderTraverse(T->lchild,Visit))if(PostOrderTraverse(T->rchild,Visit)}if(Visit(T->data))returnOK;returnERROR;}elsereturnOK;}⑤先序遍历非递归算法St

5、atusIPreOrderTraverse(BiTreeT,Status(*Visit)(TEIemTypee)){BiTreep;p=T;intNUM=-1;BiTNode*stack[30];while(p

6、

7、NUM>0){Visit(p->data);NUM++;stack[NUM]=p;p=p->lchild;while(!p&&NUM>-l){p=stack[NUM];NUM-;p=p->rchild;}returnOK;}④屮序遍历非递归算法StatusIlnOrderTraversefBiTreeT/Status(*Visit)(TEIemTypee)){Bi

8、Treep;p=T;intNUM=0;BiTNode*stack[30];while(p

9、

10、NUM>0){if(p){stack[NUM++]=p;p=p->lchild;}else{NUM-;p=stack[NUM];if(!Visit(p->data))returnERROR;p=p->rchild;}}returnOK;四、实验测试结果及结果分析(一)测试结果(此处给山程序运行截图)"D:MicrosoftVisualStudioCommonMSDev98BinDebughmy6.exe"木木木木木木木彐彐J3J3J3递递525251":•二-二二,、I二

11、I二叉历历历历历二先中后先1.2.3.4.5.6.0.木木木木木木木请输入你的选择:"D:MicrosoftVisualStudioCommonMSDev98BinDebughmy6.exe”ABCDEGF请按任意键继续."D:MicrosoftVisualStudioCommonMSDev98BinDebughmy6.exe”ABCDEGF请按任意键继续.B3"D:MicrosoftVisualStudioCommonMSDev98BinDebughmy6.exe"CBEGDF

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

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

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