1 / 19
文档名称:

用递归和非递归算法实现二叉树的三种遍历.doc

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

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

分享

预览

用递归和非递归算法实现二叉树的三种遍历.doc

上传人:pk5235 2022/1/23 文件大小:94 KB

下载得到文件列表

用递归和非递归算法实现二叉树的三种遍历.doc

相关文档

文档介绍

文档介绍:.
19 / 19
《数据结构与算法》实验报告三
——二叉树的操作与应用
实验目的
熟悉二叉链表存储结构的特征,掌握二叉树遍历操作与其应用
实验要求〔题目〕
说明:以下题目中〔一〕为全体必做,〔二〕〔三〕任选其一完成

CreateBiTree<&<<*bt>->rchild>>;
}
}
void PreOder<BiTree root>
{if<root!=NULL>
{printf<"%4c",root->data>;
PreOder<root->lchild>;
PreOder<root->rchild>;
}
}
main<>
{
BiTree root;
CreateBiTree<&root>;
printf<"先序遍历:\n">;
PreOder<root>;
}
递归算法:
#include""
#define PR printf
#define ERROR 0
.
5 / 19
#define MAX 100
/*============================建立各结构体===============================*/
typedefstruct node
{
char data; /*数据域*/
struct node *lchild;
struct node *rchild; /*结点的左右指针,分别指向结点的左右孩子*/
}BTNode;
typedef BTNode *DataType;
typedefstruct
{
DataType data[MAX];
int top;
}SeqStack;
SeqStack *s;
/*============================栈的操作===================================*/
SeqStack *createemptystacks<> /*创建一个空栈*/
{
SeqStack *s;
s=<SeqStack*>malloc<sizeof<SeqStack>>;
.
6 / 19
s->top=0;
return s;
}
int stackemptys<SeqStack *s> /*判栈空*/
{
return s->top==0;
}
int stackfulls<SeqStack *s> /*判栈满*/
{
return s->top==MAX;
}
void pushs<SeqStack *s,DataType x> /*进栈*/
{
if<stackfulls<s>>
PR<"over flow\n">;
else
s->data[s->top++]=x;
}
void pops<SeqStack *s> /*退栈*/
{
if<stackemptys<s>>
PR<"underflow\n">;
.
7 / 19
else
s->top--;
}
DataType gettops<SeqStack *s> /*栈非空时取栈顶元素*/
{
return s->data[s->top-1];
}
/*============================建立二叉树==================================*/
BTNode *createbintree<> /*输入扩充的先序序列,建立二叉树*/
{
BTNode *t;
char x;
scanf<"%c",&x>;
if<x=='#'>
t=NULL; /*读入#,返回空指针 */
else
{
t=<BTNode *>malloc<sizeof<BTNode>>; /*生成结点*/
t->data=x;
t->lchild=createbintree<>; /*构造左子树*/
t->rchild=createbintree<>; /*构造右子树*/
.
8 / 19
}
return<t>;
}
/*==============================树的遍历===================================*/
void preorder<BTNode *t> /*NLR 先序遍历*/
{
if<t!=NULL>
{
PR<" %

最近更新

2019版【职业资格考试】幼儿园保育员三级业务.. 11页

2019版保育员初级考试试题试题及解析 12页

2019版实验幼儿园小班(下册)开学模拟考试试题.. 8页

2019版幼儿园保育员三级业务水平考试试题A卷-.. 10页

2019版幼儿园保育员三级能力考试试卷(I卷)-(附.. 11页

2019版幼儿园保育员三级职业水平考试试题试题.. 11页

2019版幼儿园保育员业务考试试题及解析 10页

2019版幼儿园保育员四级业务能力考试试卷A卷-.. 10页

2019版幼儿园保育员四级职业水平考试试题D卷-.. 12页

2019版幼儿园大班保育员三级职业水平考试试题.. 11页

2019版幼儿园学前班保育员三级能力考试试题试.. 12页

2019版幼儿园学前班保育员职业技能考试试题试.. 11页

2020年【职业资格考试】幼儿园保育员四级职业.. 11页

2020年一级保育员考前练习试卷C卷-附答案 5页

2020年【职业资格考试】幼儿园保育员下学期考.. 12页

2020年一级(高级技师)保育员过关检测试卷B卷-.. 5页

2020年一级保育员考前检测试题B卷-含答案 5页

2020年三级保育员(高级工)能力检测试卷B卷-附.. 5页

2020年五级(初级)保育员能力检测试题B卷-附解.. 5页

监理人员应对突发事件的能力强化-洞察阐释 33页

幼儿园开学工作计划范文与幼儿园开学第一周工.. 11页

优质护理和心态管理专家讲座 46页

初中英语2025届中考核心高频词(词义+音标+考.. 17页

一元一次不等式及一元一次不等式组复习课公开.. 22页

天津市建设工程计价办法 22页

高中英语 名词性从句专项练习 新人教版必修 5页

郭德纲、于谦 学电台 台词 13页

保险需求分析表 4页

得胜再得胜 53页

保险需求分析表 4页