实验报告七 图及图的操作实验 班级: 姓名: 学号: 专业:
一、 实验目的:
1、掌握图的基本概念和术语
2、掌握图的存储结构及创建算法。
3、掌握图的遍历算法(递归算法)。
二、 实验内容:
1、图邻接矩阵存储结构表示及基本操作算法实现
[实现提示] (同时可参见教材及ppt上的算法)函数、类名称等可自定义,部分变量请加上学号后3位。也可自行对类中所定义的操作进行扩展。
所加载的库函数或常量定义及类的定义:
(1)邻接矩阵存储结构类定义:
自定义如下:
(2)创建邻接矩阵算法
创建无向图邻接矩阵算法:
创建无向网邻接矩阵算法:
创建有向图邻接矩阵算法:
创建有向网邻接矩阵算法:
(3)输出邻接矩阵结果算法
#include <iostream>
using namespace std;
const int MaxSize=20;
const int INFINITY=65535;
template<class T>
class Graph{
public:
Graph(T a[],int n,int e);//构造函数,a[]表示节点数组,n表示顶点个数,e表示边数
void printGraph(); //输出
void BFS(int v,int visited[]); //广度优先搜索
private:
T vertex[MaxSize];
int arc[MaxSize][MaxSize];
int vertexNum,arcNum;