- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
带父亲节点的平衡二叉树的建立
XXX航空航天大学
课 程 设 计 报 告
课程设计名称:数据结构课程设计
课程设计题目:带父亲节点的平衡二叉树的建立
院(系):计算机学院
专 业:网络工程
班 级:
学 号:
姓 名:
指导教师:
目 录
1 课程设计介绍 1
1.1 课程设计内容 1
1.2课程设计要求 1
2 课程设计原理 2
2.1 课设题目粗略分析 2
2.2 原理图介绍 2
2.2.1 功能模块图 2
2.2.2 流程图分析 3
3 数据结构分析 8
3.1 存储结构 8
3.2 算法描述 8
4 调试与分析 10
4.1 调试过程 10
1.2 程序执行过程 11
参考文献 12
附 录(关键部分程序清单) 13
1 课程设计介绍
1.1 课程设计内容
设计程序,建立带有父亲结点的平衡二叉树,系统主要功能是:从键盘上输入一整数序列,建立一颗平衡二叉树。
1.2课程设计要求
要能够形象方便的观察树的结构;
要能够形象的演示树的平衡过程;
课程设计报告必须符合课程设计报告规范;
提交合格的报告后,经指导老师测试程序后,课设完成。
2 课程设计原理
2.1 课设题目粗略分析
根据课设题目要求,我将整体程序分为四大模块,这四个模块相互独立,没有任何嵌套调用的情况,以下是四个模块的大体分析:
(1)判断模块:在插入一个关键字时,首先先对该关键字进行判断,如果该关键字已经存在则不插入,否则插入该关键字,调用函数InsertAVL()。
(2)左子树插入模块:如果判断完的新关键字插在左子树上,则对该以指针p所指结点为根的二叉树作左平衡旋转处理,本算法结束时,指针p指向新的根结点,调用函数LeftProcess()RightProcess()。DispBSTree().2 原理图介绍
主函数主要实现的功能是函数调用,主函数首先对输入的关键字进行判断,调用函数InsertAVL()LeftProcess(DispBSTree()DispBSTree().2.2 流程图分析
1.主函数流程图
主函数主要实现的功能是函数调用,主函数首先对输入的关键字进行判断,若该关键字在已建树中已经存在,则返回主函数接着对下一个关键字进行判断。若该关键字在已建树中不存在,则插入该数,当所有的关键字都插入完事之后,进行输出。流程图如图2.1所示。
图2.1 主函数流程图
2.判断模块流程图
若在平衡二叉排序树b中不存在和e有相同关键字的结点,则插入一个数据元素为e的新结点,并返回1,否则返回0。若因插入而使二叉排序树失去平衡,则作平衡旋转处理,布尔变量taller反映b长高与否。流程图如图2.2所示。
图2.2 判断模块流程图
3.左子树插入模块流程图
断完的新关键字插在左子树上,则对该以指针p所指结点为根的二叉树作左平衡旋转处理,本算法结束时,指针p指向新的根结针。流程图如图2.3所示。
图2.3左子树插入模块流程图
4.右子树插入模块流程图
断完的新关键字插在右子树上,则对该以指针p所指结点为根的二叉树作右平衡旋转处理,本算法结束时,指针p指向新的根结针。流程图如图2.4所示。
图2.4 右子树插入模块流程图
3 数据结构分析
3.1 存储结构
定义一个关键字类型的字符数组,其空间足够大,用来存放关键字。
3.2 算法描述
1.判断关键字算法如下:
{//若在平衡二叉排序树b中不存在和e有相同关键字的结点,则插入一个数据元素为e的新结点,
if(b==NULL) //原树为空,插入新结点,树长高,置taller为1
{b=(BSTNode*)malloc(sizeof(BSTNode));
b-key=e;
b-lchild=b-rchild=NULL;
b-bf=0;
taller=1;}
else
{if(e==b-key) //树中已存在和e有相同关键字的结点则不插入
{taller=0;
return 0;}
if(eb-key) //继续在*b的左子树中进行有哪些信誉好的足球投注网站
{if((InsertAVL(b-lchild,e,taller))==0) //未插入
您可能关注的文档
- 差分放大电路的multisim仿真+电子灭鼠器.doc
- 左摆动杠杆零件的机械加工工艺规程及精铣面夹具设计.doc
- 巴塞尔协议Ⅲ对中国银行业的影响分析.doc
- 巴塞尔新协议对我国银行资本监管的影响.doc
- 市区供水扩建工程水厂部份输水管道安装及水处理厂建安工程据实施工组织设计.doc
- 市场经济条件下地方政府职能定位的思考.doc
- 市场细分营销调研中的应用技术.doc
- 市场部制冷原理培训讲义.doc
- 帕萨特轿车的发动故障诊断及保养维修.doc
- 带gain-boosting电路的单级高增益全差分运算放大器的设计.doc
- 中国行业标准 DB/T 100-2024区域性地震安全性评价.pdf
- 《GM/T 0138-2024C-V2X车联网证书策略与认证业务声明框架》.pdf
- GM/T 0138-2024C-V2X车联网证书策略与认证业务声明框架.pdf
- DB/T 100-2024区域性地震安全性评价.pdf
- 中国行业标准 GM/T 0138-2024C-V2X车联网证书策略与认证业务声明框架.pdf
- 校园周边书店阅读氛围对初中生阅读素养提升的影响研究教学研究课题报告.docx
- 初中校园餐饮卫生监管与食品安全教育创新模式研究教学研究课题报告.docx
- 《文化遗产保护与旅游开发平衡机制的法律法规完善研究》教学研究课题报告.docx
- 《农作物病虫害生物防治技术的经济效益与社会影响分析》教学研究课题报告.docx
- 1 剖宫产术后子宫瘢痕憩室治疗中的并发症预防与护理措施教学研究课题报告.docx
最近下载
- 药事管理学药品注册管理课件.ppt VIP
- 《肩袖损伤与肩周炎》课件.ppt VIP
- 2024年重庆市巴蜀中学初升高自主招生语文试卷真题(含答案).docx VIP
- 中介新房培训课件内容.ppt VIP
- 2024年重庆渝中区重庆市巴蜀中学自主招生数学试卷(初升高保送)(详解版).pdf VIP
- 2025年西藏自治区公务员录用考试面试真题试卷(结构化小组)题型分析.docx VIP
- 药品注册管理课件.ppt VIP
- 击剑基础理论知识单选题100道及答案解析.docx VIP
- 《未成年人保护法》课件ppt.pptx VIP
- (高清版)B-T 19363.1-2022 翻译服务 第1部分:笔译服务要求.pdf VIP
文档评论(0)