二叉树链式存储结构 第六章实验报告

二叉树链式存储结构 第六章实验报告

ID:42584418

大小:28.50 KB

页数:4页

时间:2019-09-18

二叉树链式存储结构 第六章实验报告_第1页
二叉树链式存储结构 第六章实验报告_第2页
二叉树链式存储结构 第六章实验报告_第3页
二叉树链式存储结构 第六章实验报告_第4页
资源描述:

《二叉树链式存储结构 第六章实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验名称:二叉树链式存储结构实验类型:验证性实验班级:20102111学号:2010211102姓名:实验日期:2012.5.271.问题描述二叉链表的C语言描述;基本运算的算法——建立二叉链表、先序遍历二叉树、中序遍历二叉树、后序遍历二叉树、后序遍历求二叉树深度。2.数据结构设计typedefstructBitnode{chardata;structBitnode*lchild,*rchild;}Bitnode,*Bitree;3.算法设计建立二叉链表:voidcreateBitree(Bitree&T){charch

2、;if((ch=getchar())=='#')T=NULL;else{T=(Bitnode*)malloc(sizeof(Bitnode));T->data=ch;createBitree(T->lchild);createBitree(T->rchild);}}先序遍历二叉树:voidpreorder(Bitree&T){if(T!=NULL){printf("%c",T->data);preorder(T->lchild);preorder(T->rchild);}}中序遍历二叉树:voidinorder(Bitr

3、ee&T){if(T!=NULL){inorder(T->lchild);printf("%c",T->data);inorder(T->rchild);}后序遍历二叉树:voidpostorder(Bitree&T){if(T!=NULL){postorder(T->lchild);postorder(T->rchild);printf("%c",T->data);}}//后序遍历后序遍历求二叉树深度:intDepth(Bitree&T){//返回深度intd,dl,dr;if(!T)d=0;else{dl=Depth

4、(T->lchild);dr=Depth(T->rchild);d=1+(dl>dr?dl:dr);}returnd;}4.运行、测试与分析运行程序,显示菜单,(1)如图1.1:图1.1(2)结果图1.2:图1.25.实验收获及思考在实验过程中学会了调试程序,对于二叉树的相关知识有了不同的认识,不仅仅是抽象上的了。更重要的是懂得了自己写程序的重要性,慢慢养成习惯。6.源代码#include#includetypedefstructBitnode{chardata;structBitn

5、ode*lchild,*rchild;}Bitnode,*Bitree;//建立二叉树voidcreateBitree(Bitree&T){charch;if((ch=getchar())=='#')T=NULL;else{T=(Bitnode*)malloc(sizeof(Bitnode));T->data=ch;createBitree(T->lchild);createBitree(T->rchild);}}//先序遍历输出结点voidpreorder(Bitree&T){if(T!=NULL){printf("%

6、c",T->data);preorder(T->lchild);preorder(T->rchild);}}voidinorder(Bitree&T){if(T!=NULL){inorder(T->lchild);printf("%c",T->data);inorder(T->rchild);}}//中序遍历voidpostorder(Bitree&T){if(T!=NULL){postorder(T->lchild);postorder(T->rchild);printf("%c",T->data);}}//后序遍历/

7、/后序遍历求深度intDepth(Bitree&T){//返回深度intd,dl,dr;if(!T)d=0;else{dl=Depth(T->lchild);dr=Depth(T->rchild);d=1+(dl>dr?dl:dr);}returnd;}intmain(){printf("**********二叉树链表存储********");printf("1.建立二叉链表2.先序遍历3.中序遍历4.后续遍历5.后序遍历求深度");printf("例子:abc##de#g##f###");B

8、itreeT;printf("输入树的结点:");createBitree(T);printf("先序为:");preorder(T);printf("中序遍历为:");inorder(T);printf("后序为:");postorder(T);printf("后序求深度:%d",Dep

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

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

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