1、 届课程设计 图的建立与遍历图的建立与遍历 课程设计论文课程设计论文 学生姓名 学 号 所属学院 信息工程学院 专 业 计算机科学与技术 班 级 计算机 指导教师 教师职称 讲师 第 2 页 共 10 页 目录目录 前言前言 . 1 正文正文 . 1 1.1 课程设计的教学目的和任务 . 1 1.2 课程设计的主要内容 1 1.3 课程设计报告的要求 . 2 2.1.问题描述及基本要求 2 2.2.算法思想 2 2.3 模块划分 3 2.3.1 深度优先搜索 3 2.3.2 广度优先搜索法 4 2.3.3 分析与探讨 4 2.3.4 图的存储 5 2.4 测试数据 8 2.5 测试情况 8 总
2、总 结结 1010 参考文献:参考文献: 1010 附附 录录 1111 课程总结课程总结 1414 第 1 页 共 10 页 前言前言 图遍历又称图的遍历,属于数据结构中的内容。指的是从图中的任一顶点出发,对图中 的所有顶点访问一次且只访问一次。 图的遍历操作和树的遍历操作功能相似。 图的遍历是图 的一种基本操作,图的许多其它操作都是建立在遍历操作的基础之上。 由于图结构本身的复杂性,所以图的遍历操作也较复杂,主要表现在以下四个方面: 在图结构中,没有一个“自然“的首结点,图中任意一个顶点都可作为第一个被访问 的结点。 在非连通图中,从一个顶点出发,只能够访问它所在的连通分量上的所有顶点,因
3、 此,还需考虑如何选取下一个出发点以访问图中其余的连通分量。 在图结构中,如果有回路存在,那么一个顶点被访问之后,有可能沿回路又回到该 顶点。 在图结构中,一个顶点可以和其它多个顶点相连,当这样的顶点访问过后,存在 如何选取下一个要访问的顶点的问题。 正文正文 1.1 课程设计的教学目的和任务 (1) 使学生进一步理解和掌握所学的各种基本抽象数据类型的逻辑结构、 存储结构和操 作实现算法,以及它们在程序中的使用方法。 (2) 使学生初步掌握软件开发过程的问题分析、设计、编码、测试等基本方法和基本技 能。 (3) 使学生掌握使用各种计算机资料和有关参考资料, 提高学生进行程序设计的基本能 力。
4、(4) 使学生能用系统的观点和软件开发一般规范进行软件开发, 培养软件工作者所应具 备的科学的工作方法和作风。 1.2 课程设计的主要内容 (1) 问题分析和任务定义。 根据题目的要求,充分地分析和理解问题,明确问题要求做什么?限制条件是什么? (2) 逻辑设计。 对问题描述中涉及的操作对象定义相应的数据类型, 并按照以数据结构为中心的原则划 分模块, 定义主程序模块和各抽象数据类型。 逻辑设计的结果应写出每个抽象数据类型的定 义(包括数据结构的描述和每个基本操作的功能说明) ,各个主要模块的算法,并画出模块 之间的调用关系图。 (3) 物理设计。 定义相应的存储结构并写出各函数的伪代码算法。 在这个过程中, 要综合考虑系统功能, 使得系统结构清晰、合理、简单和易于调试,抽象数据类型的实现尽可能做到数据封装,基 本操作的规格说明尽可能明确具体。 详细设计的结果是对数据结构和基本操作作出进一步的 求精,写出数据存储结构的类型定义,写出