二叉树的建立和遍历实验报告(共4页).doc
《二叉树的建立和遍历实验报告(共4页).doc》由会员分享,可在线阅读,更多相关《二叉树的建立和遍历实验报告(共4页).doc(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上实验四 二叉树的建立和遍历 学院 专业 班 学号 姓名 一 实习目的1. 掌握二叉链表的存储结构;2. 掌握二叉链表的建立;3. 掌握二叉树的先序遍历、中序遍历、后序遍历的递归算法;4. 掌握二叉树遍历算法的应用;二 实习内容1. 按先序序列建立二叉树的二叉链表(算法6.4)(空树用#表示)2. 对生成的二叉树分别进行先序遍历、中序遍历、后序遍历,输出结果。3 统计二叉树中结点个数; 4. 求二叉树的高度;三 实验步骤1. 定义 二叉链表的存储结构#include stdio.h#include stdlib.h typedef char TElemType;type
2、def struct BiTNode TElemType data; struct BiTNode *lchild, *rchild; / 左右孩子指针 BiTNode,*BiTree;2. 编写函数CreateBiTree,按先序序列建立二叉树的二叉链表;测试的字符序列为abdg#e#c#f#; 程序代码为:void CreateBiTree(BiTree &T) / 算法6.4:按先序次序输入二叉树中结点的值(可为字符型或整型,在主程中定义), 构造二叉链表表示的二叉树T。以#表示空树 TElemType ch; scanf(%c,&ch); if(ch=#) / 空 T=NULL; el
3、se T=(BiTree )malloc(sizeof(BiTNode); / 生成根结点 if(!T) exit(-1); T-data=ch; CreateBiTree(T-lchild);/ 递归构造左子树 CreateBiTree(T-rchild);/ 构造右子树 2. 编写二叉树的先序遍历、中序遍历、后序遍历的递归算法 int preOrderTraverse(BiTree T) / 初始条件:二叉树T存在,先序递归遍历T; if(T=NULL) return 1; if(T!=NULL) / T不空 printf(%5c,T-data); / 访问根结点 preOrderTrav
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二叉 建立 遍历 实验 报告
限制150内