一、实验目的
- 掌握图的邻接矩阵表示方法;
- 理解基于邻接矩阵的深度优先、广度优先遍历方法的实现;
- 掌握图的邻接表表示方法;
- 理解基于邻接表的深度优先、广度优先遍历方法的实现。
二、实验环境
Windows 7以上版本的操作系统,Visual Studio 2010以上编程环境。
三、实验内容
- 画出以下无向图的邻接矩阵和邻接表,并对应邻接矩阵或邻接表列出该图的深度优先遍历序列和广度优先遍历序列。(选定A为起点进行遍历)
该无向图的邻接矩阵如下所示:
该无向图的顶点数组如下所示:
该无向图的邻接表如下所示:
以A点为起点的深度遍历:A->C->B->G->D->E->F
以A点为起点的广度遍历:A->C->G->B->D->E->F
- 画出以下有向图的邻接矩阵和邻接表,并对应邻接矩阵或邻接表列出该图的深度优先遍历序列和广度优先遍历序列。(选定A为起点进行遍历)
该有向图的邻接矩阵如下所示:
该有向图的顶点数组如下所示:
该有向图的邻接表如下所示:
以A点为起点的深度遍历:A->C->B->G->D->E->F
以A点为起点的广度遍历:A->C->G->B->D->E->F
- 把练习1的无向图的邻接矩阵代入课件附带的 graph 项目中main.cpp文件的m[MAXV][MAXV] 二维数组,验证无向图深度优先遍历的结果。
结果如下图所示:
- 把练习2的有向图的邻接矩阵代入课件附带的 graph 项目中main.cpp文件的m[MAXV][MAXV] 二维数组,验证有向图深度优先遍历的结果。
结果如下图所示: