上机实验报告学院:计算机与信息技术学院专业:计算机科学与技术(师范)课程名称:数据结构实验题目:广度优先遍历(邻接表)班级序号:师范 1 班学号: 202421012731 学生姓名:邓雪指导老师:杨红颖完成时间:2024 年 12 月 25 号一、实验目的:1﹒掌握图的基本概念和邻接表存储结构. 2﹒掌握图的邻接表存储结构的算法实现。 3﹒掌握图在邻接表存储结构上遍历算法的实现。二、实验环境:Windows 8。1 Microsoft Visual c++ 6。0二、实验内容及要求:编写图的广度优先遍历算法。四、概要设计:先定义图的邻接表数据,建立该图的邻接表,然后在用子函数写出广度优先搜索遍历的遍历算法,最后用主函数调用它们。 实现广度优先搜索遍历可以利用队列的原理。利用队列先进先出的特性,并设置访问标志实现连通图的广度优先搜索遍历。 广度优先搜索遍历类似于树的按层次遍历,对于用邻接表做存储结构的图,从某个给定顶点出发的图的遍历得到的访问结点顶点次序,随建立的邻接表的不同而可能不同。 将每个结点的边用一个单边表链接起来组成一个整体.所有头结点可看成一个一维数组,即邻接表所有链表中结点数目的一半为图中边数.占用的存储单元数目为 n+2e。 抽象算法描述: ( 1 ) 访 问 顶 点 i , 并 将 其 访 问 标 志 置 为 已 被 访 问 , 即visited[i]=true。 (2)依次访问与标点 i 有边相连的所有顶点 w1,w2—-—--—wt。(3)再按次序访问与 w1,w2-—-—-—wt 有边相连且未曾访问过的顶点。 (4)依此类推,直到图中所有顶点都被访问完。五、代码:#include