#include <iostream>
#define MAXVEX 4 //结点数(初始默认4顶点,更改的话直接在这里修改即可)
#define MAXEDGE 5 //边数(初始默认5条边,更改的话直接在这里修改即可)
using namespace std;
//下面代码是无向图的邻接矩阵及其深度优先遍历
//删掉里面的第60行代码就成了有向图的邻接矩阵及其深度优先遍历
//注意点:下标0的位置都不用,所以要多开辟一个空间
typedef struct
{
int vexNum; //顶点数
int edgeNum; //边数
int matrix[MAXVEX+1][MAXVEX+1]; //二维数组表示矩阵
char vexinfo[MAXVEX+1]; //存放结点数组的值(如A,B,C,D)
}AdjMatr; //邻接矩阵
/*********************初始化邻接矩阵************************/
void initAdjMatr(AdjMatr &g )
{
g.vexNum = MAXVEX; //顶点数
g.edgeNum = MAXEDGE; //边数
//初始化矩阵信息,初始为0
for(int i=1;i<=MAXVEX;i++)
{
for(int j
C++数据结构-邻接矩阵的图的深度优先遍历DFS
最新推荐文章于 2024-05-20 15:46:15 发布