一、实验目得与要求(1)掌握图得相关概念,包括图,有向图,无向图,完全图,子图,连通图,度,入度,出度,简单回路与环等定义
(2)重点掌握图得各种存储结构,包括邻接矩阵与邻接表等
(3)重点掌握图得基本运算,包括创建图,输出图,深度优先遍历,广度优先遍历等
(4)掌握图得其她运算 ,包括最小生成树,最短路径,拓扑排序与关键路径等算法
(5)灵活运用图这种数据结构解决一些综合应用问题
二、实验内容与方法(1)实验内容:1、编写一个程序 al g o8-1、cpp,实现不带权图与带权图得邻接矩阵与邻接表得相互转换算法、输出邻接矩阵与邻接表得算法,并在此基础上设计一个程序 exp8—1、cp p实现如下功能:① 建立如图 1 所示得有向图 G 得邻接矩阵,并输出;② 由有向图G得邻接矩阵产生邻接表,并输出;③ 再由②得邻接表产生对应得邻接矩阵,并输出
图 12、编写一个程序a lgo8-2、cpp,实现图得遍历运算,并在此基础上设计一个程序e xp8-2、cpp 完成如下功能:① 输出图 1 所示得有向图G从顶点 0 开始得深度优先遍历序列(递归算法);② 输出图1所示得有向图 G 从顶点 0 开始得深度优先遍历序列(非递归算法);③ 输出图 1 所示得有向图 G 从顶点 0 开始得广度优先遍历序列
3、设计一个程序 exp8-3、cpp,采纳邻接表存储图,并输出图 8、1(a)中从指定顶点 1出发得所有深度优先遍历序列
(2)实验方法:1、综合运用课本所学得知识,用不同得算法实现在不同得程序功能
2、结合指导老师得指导,解决程序中得问题,正确解决实际中存在得异常情况,逐步改善功能
3、根据实验内容,编译程序
三、实验环境:Win d ows 7,Visu a l C++6、0三、实验过程描述文件g raph、h 中定义了图得邻接矩阵表示类型与邻接表表示类型,该头文件在以下三个实