《数据结构》课程设计- -树与二叉树转换的实现
23页1、河南工程学院数据结构与算法课程设计成果报告树与二叉树转换的实现学生学号: 学生姓名: 学 院: 计算机学院 专业班级: 软件工程1341 专业课程: 数据结构与算法 指导教师: 2014 年 12 月 29 日题 目树与二叉树转换的实现考核项目考核内容得分平时考核(30分)出勤情况、态度、效率;知识掌握情况、基本操作技能、知识应用能力、获取知识能力系统设计(20分)分析系统的功能模块编程调试(20分)实现系统的各个功能模块,并完成调试回答问题(15分)回答老师针对课程设计提出的问题课程设计报告撰写(10分)严格按照规范要求完成课程设计报告源代码(5分)按照规范要求完成课程设计源代码的排版总 评 成 绩指导教师评语: 日期: 年 月 日目 录1 课程设计目标与任务11.1 课程设计目标11.2 课程设计任务12 分析与设计32.1 题目分析32.2 存储结构设计32.3 算法描述42.4 程序流程图52.5 算法实现说明53 程序清单104 测试135 总结15参考文献161 课程设计目标与任务1.1 课程设计目标数据结构课程设计是在学完数据结构课程之后的实践教学环节。该实践教学是软件设
2、计的综合训练,包括问题分析,总体结构设计,用户界面设计,程序设计基本技能和技巧。要求学生在设计中逐步提高程序设计能力培养科学的软件工作方法学生通过数据结构课程设计各方面得到锻炼:(1)能根据实际问题的具体情况结合数据结构课程中的基本理论和基本算法,正确分析出数据的逻辑结构,合理地选择相应的存储结构,并能设计出解决问题的有效算法;(2)通过上机实习,验证自己设计的算法的正确性,学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改;(3)培养算法分析能力,分析所设计算法的时间复杂度和空间复杂度,进一步提高程序设计水平;(4)尽可能借助语言环境实现图形显示功能,以便将抽象的数据结构以图形方式显示出来,将复杂的运行过程以动态方式显示出来,获得算法的直观感受。1.2 课程设计任务实现树与二叉树的转换的实现,以及树的前序,后序的递归,非递归遍历算法,层次序的非递归遍历算法的实现,应包含建树的实现。(多种遍历算法只可实现一个)利用本学期所学的数据结构的有关知识,实现树与二叉树相互转换,设计树与二叉树转换的相关函数库,以便在程序设计中调用,要求:(1)实现树与二叉树的转换;(2)借助语言环境实现
3、图形显示功能,以便将抽象的数据结构以图形方式显示出来,将复杂的运行过程以动态方式显示出来;(3)给出若干例程,演示通过调用自己所缩写程序来实现相关问题的求解。该课程设计通过实现树与二叉树的转换,理解树与二叉树的相互转化关系,掌握树与二叉树的存储结构的异同,加深对二叉树和树的理解。2 分析与设计2.1 题目分析树的初始化函数(双亲法和孩子结点法两种),建树函数,输出树函数,树的前序遍历函数(递归和非递归两种),树的后序遍历函数(递归和非递归两种),树的层次遍历函数,一般树和二叉树的转换函数。2.2 存储结构设计分析树和二叉树的存储结构,二叉树的存储结构如图2.1。 图2.1二叉树的存储结构图树是一种非线性的数据结构,树中的元素之间是一对多的层次关系。常用的有三种存储结构,即双亲表示法、孩子表示法、和孩子兄弟表示法。 事实上,一棵树采用孩子兄弟表示法所建立的存储结构与它所对应的二叉树的二叉链表存储结构是完全相同的,只是两个指针域的名称及解释不同而已,通过图直观的表示了树与二叉树之间的对应关系和相互转换方法。如图2.2。图2.2 树和二叉树的转换图2.3 算法描述一.二叉树创建: 用链表实现
4、创建一个树结点的结构体,从键盘输入数据,存入数组。把下标 为2*i+1 的值存入左孩子,为2*i+2的存入右孩子。二. 先序遍历二叉树的递归算法: 若二叉树为空,则空操作;否则(1)访问根结点;(2)先序遍历左子树;(3)先序遍历右子树。三.后序遍历二叉树的递归算法: 若二叉树为空,则空操作;否则(1)后序遍历左子树;(2)后序遍历右子树。(3)访问根结点; 四. 先序非递归算法: BiNode根指针,若 BiNode!= NULL对于非递归算法,引入栈模拟递归工作栈,初始时栈为空。五. 后序非递归算法: BiNode是要遍历树的根指针,后序遍历要求在遍历完左右子树后,再访问根。需要判断根结点的左右子树是否均遍历过。void F_PostOrder(BiNode root)六. 层次序遍历算法:按照树的层次从左到右访问树的结点,层序遍历用于保存结点的容器是队列。2.4 程序流程图该程序是先建立树,再以树为基础,将树转换成二叉树。该程序的流程是建立树,利用队列,递归,指针等,将树的根结点变为二叉树的根结点,进行树到二叉树的转换,程序的最终目的是根据输入的树的接点,孩子结点及其父亲结点,生
《《数据结构》课程设计- -树与二叉树转换的实现》由会员桔****分享,可在线阅读,更多相关《《数据结构》课程设计- -树与二叉树转换的实现》请在金锄头文库上搜索。
HR告诉你这样写出好简历.doc
protues自制元件.doc
公园绿化养护方案范文.doc
单相电子式电能表说明书.doc
南开大学21秋《传播学概论》在线作业二满分答案35
自来水厂运行管理制度模板(7篇)
市中心公寓房屋租赁协议标准范本(八篇)
妈妈有关作文_妈妈改变了我初二优秀作文.doc
钓野生鲫鱼的方法与技巧.doc
人教版二年级下学期精选考点小学语文期末模拟试卷IV卷.docx
【教育资料】小学二年级语文教案《蓝树叶》教学设计.doc
计算机专业求职自荐信最新范文集合模板五篇.docx
2023幼儿园庆元旦主题活动总结范文(6篇)
专业技术人员互联网时代电子商务测试题及答案
2023年电视剧楚乔传大结局是什么范文.docx
广告牌制作、安装合同范本.doc
2019年销售方案计划书.doc
二十一个巧记英语语法的口诀
工作报道稿范文大全.docx
小班社会活动教案《笑脸娃娃》
2023-01-07 21页
2023-05-25 25页
2023-11-20 23页
2024-01-12 20页
2023-04-26 30页
2023-12-12 7页
2023-03-16 95页
2022-12-25 14页
2024-01-24 14页
2023-02-15 46页