1 / 12
文档名称:

数据结构与算法实验二叉树基本操作.doc

格式:doc   大小:416KB   页数:12
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构与算法实验二叉树基本操作.doc

上传人:pppccc8 2019/3/7 文件大小:416 KB

下载得到文件列表

数据结构与算法实验二叉树基本操作.doc

文档介绍

文档介绍::..;;;;。实验内容编制一个演示二叉树创建、遍历、计算等操作的程序。问题描述用数据结构相关知识,实现二叉树的定义和操作。该程序包括二叉树结构类型以及对二叉树操作的具体的函数定义(包括:初始化二叉树、清空二叉树、检查二叉树是否为空、遍历二叉树(先序、后序、屮序、层次)、求二叉树的深度、求二叉树所有节点数)。问题分析该实验是棊于C语言和数据结构知识棊础的对二叉树的棊本操作的检验,无需设计复杂的算法,程序语句也相对简单。因此,我直接按要求定义了对二叉树操作的具体函数,并于主函数中实现对应的功能调用,其中,功能选择靠switch语句实现。++编写,完成二叉树的生成、遍历、计算等基木操作。①输入的形式和输入值的范围:以字符(其中表示虚节点)的形式输入,以创建二叉树;在输入二叉树节点前,必须先确定该序列能正确创建二叉树。②输出的形式:在所有三种操作中都显示操作是否正确以及操作后二叉树的内容。③程序所能达到的功能:完成二叉树的生成、遍历(包括先序、后序、中序、层次四种方式)、计算等基本操作。④测试数据:创建操作中依次输入a,b,d,#,#生成一个二叉树。)为了实现上述程序功能,需要定义二叉树的抽象数据类型:ADTBitTree{数据对象:由一个根节点和两个互不和交的左右子树构成数据关系:结点具有相同的数据类型及层次结构基本操作:VoidBinTreelnit(BitTree*T)初始条件:无操作结果:初始化一棵二叉树VoidBinTreeCreat(BitTree*T)初始条件:二叉树T已存在操作结果:按先序次序创建一棵二叉树2)本程序包含7个函数:①主函数main()②初始化二义树函数BinTreelnit()③建立一棵二叉树函数BinTreeCreat()④先序遍历函数PreOrderTraverse()⑤中序遍历函数lnOrderTraverse()⑥后序遍历闲数PostOrderTraverse()⑦层次遍历函数LevelOrderTraverse()⑧求二叉树深度函数Countlcvcl0⑨检验空树函数BinTreeEmpty()⑩求节点数函数Countnode()函数说明#include<>#include<>typedefcharDatatype;typedefstructNodeType{Datatypedata;structNodeType*lchild;structNodeType*rchild;}BiTNode;typedefBiTNode*BinTree;//初始化二叉树。即把树指针置空voidBinTreelnit(BiTNode*T){//BiTNode*T;T=(BiTNode*)malloc(sizeof(BiTNode));T=NULL;}//二叉树的建立BinTreeCreateBiTNode()BiTNode*T;printfC'Error!");Datatypech;ch=getchar();jf(ch=='#')T=NULL;else{if(!(T=(BiTNode*)malloc(sizeof(BiTNode))))T->data=ch;T->lchild=CreateBiTNode();T->rchild=CreateBiTNode();}returnT;}//先序遍历voidPreOrderTraverse(BiTNode*p){if(p!=NULL){printf("%c",p->data);PreOrderTraverse(p->lchild);PreOrderTraverse(p->rchild);}}//中序遍历voidInOrderTraversefBiTNode*p){if(p!=NULL){InOrderTraverse(p->lchild);printf("%cnzp->data);InOrderTraverse(p->rchild);}}//后序遍历voidPostOrderTraverse(BiTNode*p){if(p!=NULL){PostOrderTraverse(p->lchild);PostOrderTraverse(p->rchild);printf("%c",p->data

最近更新

高效公司管理建议书 6页

高三学生备考建议书 4页

餐厅装修设计建议书 5页

领巾广播站运营建议书 4页

小儿伤寒症状及应对 45页

2024年淳化县幼儿园教师招教考试备考题库带答.. 31页

2024年湖北工程学院马克思主义基本原理概论期.. 12页

2024年湖南师范大学马克思主义基本原理概论期.. 12页

2024年满洲里俄语职业学院马克思主义基本原理.. 12页

2024年炎陵县招教考试备考题库带答案解析(夺.. 30页

2024年甘孜县招教考试备考题库及答案解析(必.. 30页

2024年盐山县招教考试备考题库含答案解析(必.. 31页

2024年美姑县招教考试备考题库附答案解析(必.. 31页

2024年若尔盖县招教考试备考题库及答案解析(.. 31页

2024年蕉岭县招教考试备考题库含答案解析(必.. 31页

2024年西安信息职业大学马克思主义基本原理概.. 13页

2024年贵南县幼儿园教师招教考试备考题库带答.. 31页

2024年运城师范高等专科学校马克思主义基本原.. 12页

2024年邵东县招教考试备考题库及答案解析(必.. 31页

2024年酉阳土家族苗族自治县招教考试备考题库.. 30页

2024年金沙县招教考试备考题库附答案解析 31页

2024年长春信息技术职业学院马克思主义基本原.. 12页

2024年阜城县幼儿园教师招教考试备考题库及答.. 31页

2024年陕西旅游烹饪职业学院马克思主义基本原.. 12页

2024年青岛黄海学院马克思主义基本原理概论期.. 13页

2024年马山县幼儿园教师招教考试备考题库带答.. 31页

网络身份认同危机研究 35页

2025年上海中侨职业技术大学马克思主义基本原.. 12页

2025年上海济光职业技术学院马克思主义基本原.. 13页

2025年中牟县招教考试备考题库附答案解析(夺.. 31页