1、数据结构课程设计报告 1 数据结构课程设计报告 题 目: 前序+中序构造二叉树的算法演 示 学生姓名: 学 号: 专 业:计算机科学与技术 班 级: 指导教师: 2013 年年 12 月月 30 日日 数据结构课程设计报告 2 目录目录 目录 2 任务书 3 【摘要】. 4 1程序主要功能 6 2. 程序总体设计 . 6 1)文件结构 6 2) 主要类 7 3) 程序结构 7 3. 程序详细设计 . 8 3.1 主窗体(CMylog:Dialog): . 8 3.2 窗体 2_二叉树的后序输出和树的高度(D2:Dialog): . 9 3.3 窗体 3_辅助功能(D11:Dialog): .
2、9 3.4 窗体 4_构造过程(XP:Dialog): 9 4. 运行结果 9 5. 附录: (代码) 14 数据结构课程设计报告 3 任务书任务书 课程名称 数据结构课程设计 设计题目 前序+中序构造二叉树的算法演示 指导教师 刘勇 时间 2013.12.302014.1.3 一、教学要求 二、设计资料及参数 三、设计要求及成果 学号最后 2 位%21+1 所得结果对应的课设题目 如 2012014452 将选择 20 题 1 中国象棋 2 五子棋 3 链表的算法(构造、插入、删除、反转)演示 4 栈的算法(构造、入栈、出栈)演示 5 四则运算表达式的算法演示(用栈实现) 6 走迷宫的算法演
3、示(用栈实现) 7 前序+中序构造二叉树的算法演示 8 哈夫曼树的算法演示 9 图的拓扑排序算法演示 10 图的关键路径算法演示 11 图的最短路径算法演示-迪杰斯特拉算法 12 图的最短路径算法演示-弗洛伊德算法 13 OJ 做题情况分析:班级总 AC 排名、宿舍总 AC 排名、2-8 定律、做题时间点分布排名、周 末做题比例 14 快速排序的算法演示 15 堆排序的算法演示 16 坦克大战 17 最小生成树算法演示-迪杰斯特拉算法 18 最小生成树算法演示-普利姆算法 19 平衡二叉树的算法演示 20 二叉排序树的算法演示 21 排序算法性能分析(选择、冒泡、插入、快速、堆排序、希尔排序、
4、未排序因子) 以最短路径算法举例: 成绩 完成情况 D,C- 基本没有完成 C,C+ 用 DOS 界面基本完成算法,有明显 BUG B- 用 DOS 界面完成算法,数据量较小,没有明显 BUG B 用 DOS 界面完成算法,数据量较大,没有明显 BUG 数据结构课程设计报告 4 B+,A- 用 MFC 或者 C#完成界面,数据量较大,没有明显 BUG A 用 MFC 或者 C#完成界面,数据量较大,有应用背景,没有明显 BUG,既能一步出结 果,也能单步看过程 A+ 满足 A 的基础上,没有任何 BUG,数据量大,功能完备,界面美观大方、考虑到代 码重用性 以上是程序成绩,结合报告的成绩: 如
5、果报告写得不好,降低 1 到 2 个档次 如果报告写的很好,则提升 1 到 2 个档次 报告写得好的标准有: 格式一致、分章分节有目录、没有错别字、有图有表有题注、图表在文字中有引用、有关键代码、有 设计 算法 20 功能 20 界面 15 问题 35 报告 30 四、进度安排 第一天 选择课程设计题目,分析课题的要求,设计程序结构 第二天 编程 第三天 编程,写报告 第四天 提交课程设计报告(打印稿及电子稿) 五、评分标准 1. 根据平时上机考勤、表现和进度,教师将每天点名和检查 2. 根据课程设计完成情况,必须有可运行的软件。 3. 根据课程设计报告的质量,如有雷同,则所有雷同的所有人均判为不及格。 六、建议参考资料 【摘要】【摘要】 本次课程设计我主要采用了树和二叉树, 递归和非递归等的知识。 我采用 MFC 进行实现 的,计算过程展现的活灵活现、操作方便和通俗易懂等,是本课设的主要特点。通过本次课 程设计,我对数据结构和 MFC 语言有了更深的理解,让我把学到的理论应用于具体实践中, 锻炼了我各方面的能力, 从而让我更快提高, 本次课设很大程度上增加了我的自学能力和提 高了