二叉树的遍历(先序遍历中序遍历后序遍历全)实验报告

二叉树的遍历(先序遍历中序遍历后序遍历全)实验报告

ID:27649876

大小:148.00 KB

页数:11页

时间:2018-12-05

二叉树的遍历(先序遍历中序遍历后序遍历全)实验报告_第1页
二叉树的遍历(先序遍历中序遍历后序遍历全)实验报告_第2页
二叉树的遍历(先序遍历中序遍历后序遍历全)实验报告_第3页
二叉树的遍历(先序遍历中序遍历后序遍历全)实验报告_第4页
二叉树的遍历(先序遍历中序遍历后序遍历全)实验报告_第5页
资源描述:

《二叉树的遍历(先序遍历中序遍历后序遍历全)实验报告》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、实验目的编写一个程序,实现二叉树的先序遍历,中序遍历,后序遍历。实验内容编程序并上机调试运行。编写一个程序,实现二叉树的先序遍历,中序遍历,后序遍历。编写程序#include#includetypedefstructBiTNode{chardata;structBiTNode*lchild,*rchild;}BiTNode,*BiTree;/•丄••I*•I**1^•丄•*1^•!>•!>*1*•!>*1^•!*•!>•!>ff*T*///按先序次序构建的二义树链表voidCreatBiTree(BiTree*T)

2、{charch;if((ch=getchar())==,')*T=NULL;else*T=(BiTNode*)malloc(sizeof(BiTNode));if(!(*T))exit(l);(*T)->data=ch;CreatBiTree(&(*T)->lchild);CreatBiTree(&(*T)->rchild);/«£«*1^«£«<1^«£«*1^*£*%£*%£*%£*%£*%£*%£*/I#7*#T^#T^^T%#Tm^7^#T>^T%#T%^7^#T%#7^#T>^7^#

3、%^

4、7^#T^lchild);PreOrderTraverse(T->rchiId);}}

5、//中序遍历--递归算法voidInOrderTraverse(BiTreeT){if(T){InOrderTraverse(T-〉lchild);printf("%c",T-〉data);lnOrderTraverse(T->rchild);}}/«£««£««£««£««£««£«*1^«£«<1^«£«*1^/I#7*^7^lchild);Post

6、OrderTraverse(T->rchild);printf("%c",T-〉data);}//main函数voidmain()BiTreeT;printf("请按先序次序输入二叉树中结点的值,空格字符表示空树An1');CreatBiTree(&T);printf(,,M);printf("先序遍历为An11);PreOrderTraverse(T);printf(•’n);printf("中序遍历为:n);InOrderTraverse(T);printf(nn);printf("后序遍历力:n);PostOrderT

7、raverse(T);printf(n");getchar();运行程序:^按先序次序输入二叉树中结点的值,空格字符表示空树=ABCDEGF结果分析:按先序输入的二叉树为ABCAADEAGAAFAAA(A为空格)该二义树両成树形为:E其先序遍历为:ABCDEGF其屮序遍历为:CBEGDFA其后序遍历为:CGEFDBA可以看出运行结果是正确的。程序解析:1.首先是将程序的开头写好,因为后面要用到malloc,所以要冇stdlib.h的声明。然建立指针表structBiTNode,定义其数掘类型为char型,指针指向lchild,rchild,下一

8、个指针为BiTNode./***********^2.^^^!^**************/#include#includetypedefstructBiTNode

9、eof(BiTNode));if(?(*T))exit(1);(*T)->data=ch;Cr

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

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

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