/*******************************************************************************
* *
* 图(邻接矩阵存储)的深度优先和广度优先 *
* *
*******************************************************************************/
#include<iostream>
#define MaxVertexNum 30
using namespace std;
bool visited[MaxVertexNum];
typedef int VertexType;
typedef int Edgetype;
typedef struct{
VertexType vertexs[MaxVertexNum];
Edgetype arcs[MaxVertexNum][MaxVertexNum];
int vertexNum,edgeNum;
}MGraph;
typedef int DataType;
typedef struct{ /*队列*/
DataType data[MaxVertexNum];//数据域
int front,rear;//队头和队尾指针
}SeqQueue,* PSeqQueue;
void Create_MGraph(MGraph * G); /*创建图*/
void DFStraverse(MGraph * G); /*深度优先*/
void DFS(MGraph * G,int v); /*深度优先搜索算法*/
void BFStraverse(MGraph * G); /*广度优先*/
void BFS(MGraph * G,int v); /*广度优先搜索算法*/
PSeqQueue Init_SeqQueue(void); /*循环队列初始化*/
int Empty_SeqQueue(PSeqQueue Q);
图(邻接矩阵)的深度、广度优先遍历
最新推荐文章于 2024-05-29 09:25:06 发布