资源简介
定义采用邻接矩阵存储的图结构封装DFS、BFS算法
代码片段和文件信息
#include
#define MAXSIZE 100 //设置最大顶点数
#include
using namespace std;
typedef queue QUEUE;
template //定义一个图的类模板
class Graph
{
public:
void CreateGraph(T a[]int nint e); //创建图的邻接矩阵
void DFS(int v); //深度优先搜索函数
void BFS(int v);
int locate(T xT a[]int n); //查找输入顶点在顶点数组中的位置
private:
T vertex[MAXSIZE]; //顶点集
int arc[MAXSIZE][MAXSIZE]; //邻接矩阵
int vNumarcNum; //顶点数,边数
};
template
int Graph::locate(T xT a[]int n)
{
for(int i=0;i {
if(x==a[i])
return i;
}
}
template
void Graph::CreateGraph(T a[]int nint e)
{
int ijk;
T v1v2;
vNum=n;
arcNum=e;
for(i=0;i vertex[i]=a[i];
for(i=0;i {
for(j=0;j arc[i][j]=0; //初始化邻接矩阵
}
for(k=0;k {
cin>>v
- 上一篇:定义二叉搜索树类封装查找、插入、删除操作
- 下一篇:LR语法分析
评论
共有 条评论