- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课 程 实 验 报 告
课程名称: 数据结构
专业班级:计算机科学与技术130*班
学 号: *
姓 名: **
指导教师: ***
报告日期: 2015.5.13
计算机科学与技术学院
目 录
TOC \o 1-3 \h \z \u
HYPERLINK \l _Toc318043814 实验三 基于二叉链表的二叉树实现
HYPERLINK \l _Toc318043815 4.1 问题描述 1
HYPERLINK \l _Toc318043816 4.2 系统设计 1
HYPERLINK \l _Toc318043817 4.3 系统实现 1
HYPERLINK \l _Toc318043818 4.4 效率分析 14
HYPERLINK \l _Toc318043819 实验总结与评价 16
实验三 基于二叉链表的二叉树实现
4.1 问题描述
基于二叉链表,实现常见的,基本的运算。
4.2 系统设计
4.2.1实现如下功能:
1.InitBitree
2.DestroyBitree
3.CreatBiTree
4.ClearBitree
5.BiTreeEmpty
6.BiTreeDepth
7.Value
8.Root
9.Assign
10.Parent
11.Leftchild
12.RightChild
13.LeftSibling
14.RightSibling
15.InsertChild
16.DeleteChild
17.PreOrderTraverse
18.InOrderTraverse
19.PostOrderTraverse
20.LevelOrderTraverse
4.4.2.系统采用二叉链表存储结构:
typedef struct
{
TElemType data;
struct BiTNode *lchild,*rchild; //左右孩子指针
}BiTNode, *BiTree;
4.4.3.存储数据类型如下:
typedef struct
{
int num;
char c;
}TElemType;
4.3 系统实现
4.3.1. InitBiTree(BiTree *T)
初始条件:二叉树根结点不存在
操作结果:为根结点分配一个空间,将根结点数据值置为空字符,代表该树为空树
int InitBiTree(BiTree *T)
{
if(*T = (BiTNode*)malloc(sizeof(BiTNode))) //分配节点空间
{
(*T)-data.c = ;//节点置空
(*T)-lchild = NULL;
(*T)-rchild = NULL;
return 1;
}
else
return 0;
}
4.3.2. DestroyBiTree(BiTree T)
初始条件:二叉树存在
操作步骤:递归释放左右子树,最后释放双亲节点
操作结果:释放所有二叉树节点
int DestroyBiTree(BiTree T)
{
if(!T)
{
return 0;
}
else
{
if(!T-lchild)
DestroyBiTree(T-lchild);//递归销毁左子树
if(!T-rchild)
DestroyBiTree(T-rchild);//递归销毁右子树
free(T);
}
return 1;
}
4.3.3. CreateBiTree(BiTree *T)
初始条件:二叉树已被初始化
操作步骤:采用递归先序创建二叉树,其中,空节点用
操作结果:成功创建二叉树
int CreateBiTree(BiTree *T)
{
char ch;
getchar();
scanf(%c,ch);
if(ch == #){
*T = NULL;
return 0;
}
else {
您可能关注的文档
- 讲座8方差分析探究.ppt
- 集成运算放大电路探究.ppt
- 冷冲模设计教程_05冲裁模设计探究.pptx
- 心怀感恩,关爱他人试题.ppt
- 冷冲模设计掌握要点探究.doc
- 讲座一Word操作应用探究.ppt
- 蒋群科机械制造工艺基础复习资料探究.doc
- 集电线路及送出线路监理细则(十三)探究.doc
- 金属切削机床的分类和型号编制探究.ppt
- 冷冲压概述探究.ppt
- 中国国家标准 GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- 《GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计》.pdf
- 中国国家标准 GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- 《GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置》.pdf
- 中国国家标准 GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- GB/T 17889.4-2024梯子 第4部分:铰链梯.pdf
- 《GB/T 17889.4-2024梯子 第4部分:铰链梯》.pdf
最近下载
- 企业存货管理问题研究——以森马服饰为例.doc
- 2012年数学建模竞赛答案之一 葡萄酒.pdf VIP
- 手机游戏的营销策略分析以《明日方舟》为例.docx VIP
- 急诊POCT专项测试卷附答案.doc
- 2023年全国数学建模竞赛D题的答案.doc VIP
- 100m3每天医疗污水处理方案.docx VIP
- PreSonus 普瑞声纳 Temblor T10EN,CN T10 OwnersManual 04272021说明书用户手册.pdf
- 2021年全国数学建模竞赛D题的答案.pdf VIP
- PreSonus 普瑞声纳 Eris E44EN,CN Eris E44 and E66 OwnersManual EN V3 01112021.说明书用户手册.pdf
- 2003全国大学生数学建模竞赛b题参考答案.docx
文档评论(0)