当前位置:首页 >> 其它课程 >>

数据结构实验四 树和二叉树


数据结构实验四

树和二叉树

一、实验目的:
1. 掌握二叉树链表的结构的建立过程。 2. 掌握用递归方法实现二叉树的遍历。 3. 加深对二叉树的理解,逐步培养解决实际问题的编程能力。

二、实验要求:
1. 编写二叉树的基本操作函数。 2. 调用函数实现下列操作。 用递归方法分别先序、中序、后序遍

历二叉树。

三、实验内容:
(1) 编写二叉树的基本操作函数。 Typedef struct BiTNode { TelemType data; Struct BiTNode *lchild,*rchild; }BiTNode,*BiTree; ① 创建一棵二叉树 CreateBiTree(BiTree *T); ② 先序遍历,递归方法 re_PreOrder(BiTree *tree) ③ 中序遍历,递归方法 re_MidOrder(BiTree *tree) ④ 后序遍历递归方法 re_PostOrderOrder(BiTree*tree) (2)调用上述函数实现二叉树的先序、中序、后序遍历。

四、程序的调试及运行结果

1

五、程序代码
源程序: #include<stdio.h> #include<malloc.h> typedef struct Tree { char data; struct Tree *lchild,*rchild; }BiTree; BiTree *CreatTree(BiTree *T) { char i; i=getchar(); if(i=='*') T=NULL; else { if(!(T=(BiTree *)malloc(sizeof(BiTree)))) return 0;
2

//初始化二叉树

T->data=i; T->lchild=CreatTree(T->lchild); T->rchild=CreatTree(T->rchild);

} return T; } void re_preOrder(BiTree *T) { if(T) { printf("%c",T->data); re_preOrder(T->lchild); re_preOrder(T->rchild); } } void re_MidOrder(BiTree *T) { if(T) { re_MidOrder(T->lchild); printf("%c",T->data); re_MidOrder(T->rchild); }

} void re_PostOrder(BiTree *T) { if(T)
3

{ re_PostOrder(T->lchild); re_PostOrder(T->rchild); printf("%c",T->data); } } void main() { BiTree *T; printf("先序输入一字符串创建二叉树,如果结点为空,请输入'*':\n"); printf("请输入:"); T=CreatTree(T); printf("先序输出序列为:"); re_preOrder(T); printf("\n"); printf("中序输出序列为:"); re_MidOrder(T); printf("\n"); printf("后序输出序列为:"); re_PostOrder(T); printf("\n"); printf("\n 二叉树遍历结束!\n"); }

4


相关文章:
数据结构实验四 树和二叉树
编写C程序创建树和二叉树及相应功能的实现编写C程序创建树和二叉树及相应功能的实现隐藏>> 数据结构实验四 树和二叉树 一、实验目的: 1. 掌握二叉树链表的结构的...
数据结构实验四 树与二叉树
数据结构实验四班级 学号 姓名 分数 树与二叉树 一、实验目的: 1、掌握二叉树的定义、性质及存储方式,各种遍历算法。 2、掌握这种存储结构的构造算法以及基于每一...
数据结构树和二叉树试验报告4
数据结构树和二叉树试验报告4_工学_高等教育_教育专区。数据结构实验报告4,树和二叉树 实验报告(4)实验名称 同组人姓名 实验日期 教师评价:实验预习□ 实验操作...
数据结构 实验四 二叉树的基本操作
数据结构 实验四 二叉树的基本操作_计算机软件及应用_IT/计算机_专业资料。实验...(先序、中序、后序遍历算法)的思想; (3)掌握二叉树和叶子数、深度之间的...
树和二叉树——数据结构实验报告
树和二叉树——数据结构实验报告_工学_高等教育_教育专区。题目:编写一个实现...(4)Value(E)――对算术表达式 E 求值。 (5)CompoundExpr(p,E1,E2)――...
树和二叉树的建立及应用数据结构实验报告
树和二叉树的建立及应用数据结构实验报告_数学_自然科学_专业资料。《数据结构与...3、给出二叉树的高度。 4、给出二叉树的叶子数。 5、二叉树的每层结点数。...
树和二叉树(一) 数据结构实验
树和二叉树(一) 数据结构实验_计算机软件及应用_IT/计算机_专业资料。数据结构...选做内容任务 4:修改算法 6.4(结点及二叉树类型分别用 BiThrNode,BiThrTree,...
数据结构实验四 树与二叉树
数据结构,树的基本操作,二叉树实验题数据结构,树的基本操作,二叉树实验题隐藏>> 实验四 实验四 树与二叉树一、实验目的 掌握树与二叉树的基本操作:建立树、遍历...
实验四、树和二叉树的操作 (1)
实验四树和二叉树的操作 (1)_电脑基础知识_IT/计算机_专业资料。树和二叉树的操作河南城建学院计算机科学与工程学院 《数据结构》实验报告实验名称:_实验六 树...
数据结构实验5 树和二叉树
数据结构实验报告实验序号:5 学号姓名 实验项目名称:树和二叉树的操作 专业、班 实验时间 实验地点 一、实验目的及要求 指导教师 1、进一步掌握指针变量、动态...
更多相关标签:
数据结构二叉树实验 | 数据结构二叉树 | 数据结构二叉树代码 | 数据结构二叉树遍历 | 北邮数据结构二叉树 | 数据结构二叉树的遍历 | 数据结构二叉树的建立 | 数据结构树和二叉树 |