1、 课程设计报告 课程名称:课程名称:数据结构课程设计 设计题目设计题目: 克鲁斯卡尔算法求最小生成树 系系 别:别: 计算机系 专专 业:业: 组组 别:别: 学生姓名:学生姓名: 学学 号号: 起止日期起止日期: 2011 年 6 月 29 日 2011 年 7 月 6 日 指导教师指导教师: : 1 目 录 1. 需求分析2 1.1 设计题目2 1.2 设计任务及要求2 1.3 课程设计思想2 1.4 程序运行流程:2 1.5 软硬件运行环境及开发工具2 2.概要设计2 2.1 流程图2 2.2 抽象数据类型 MFSet 的定义3 2.3 主程序3 2.4 抽象数据类型 图 的定义4 2.
2、5 抽象数据类型 树 的定义6 3. 详细设计8 3.1 程序8 4.调试与操作说明11 4.1 测试结果11 4.2 调试分析12 5.课程设计总结与体会12 5.1 总结12 5.2 体会12 6. 致谢13 7. 参考文献13 8.附录14 2 1.需求分析 1.1 设计题目:最小生成树 1.2 设计任务及要求:任意创建一个图,利用克鲁斯卡尔算法,求出该图的最小生 成树。 1.3 课程设计思想:Kruskal 算法采用了最短边策略(设 G=(V,E)是一个无向连通 网,令 T=(U,TE)是 G 的最小生成树。最短边策略从 TE=开始,每一次贪心选择都是 在边集 E 中选择最短边(u,v),如果边(u,v)加入集合 TE 中不产生回路,则将边(u,v) 加入边集 TE 中,并将它在集合 E 中删去。),它使生成树以一种任意的方式生长,先让 森林中的树木随意生长,每生长一次就将两棵树合并,最后合并成一棵树