#include<stdio.h>
//数组表示法(领接矩阵实现)
#define MAXN 20
typedef struct{
char vertec[MAXN];
char arcs[MAXN][MAXN];
}ArrayGraph;
typedef struct node{
int vertec;
struct node *next;
}*NODE;
typedef struct{
NODE front, rear;
}QueueGraph;
void InitQueue(QueueGraph *Q)
{
NODE node = (NODE)malloc(sizeof(NODE));
if(!node){
return ;
}
Q->front = Q->rear = node;
return ;
}
void push(QueueGraph *Q, char vertec)
{
NODE node = (NODE)malloc(sizeof(NODE));
if(!node){
return ;
}
node->vertec = vertec;
Q->rear->next = node;
Q->rear = Q->rear->next;
return ;
}
int pop(QueueGraph *Q)
{
if(Q->front == Q->rear){
return ;
}
int data;
NODE node;
node = Q->front;
Q->front = Q->front->next;
data = node->vertec;
free(node);
return data;
}
void Init_G(ArrayGraph *G, int nums)
{
int i,j;
for(i=0; i<nums; i++){
for(j=0; j<nums; j+
广度优先遍历(无向图 C语言 邻接矩阵实现)
最新推荐文章于 2023-01-09 11:02:07 发布
本文详细介绍了如何使用C语言通过邻接矩阵实现无向图的广度优先遍历算法,包括关键步骤和示例代码,帮助理解数据结构中的图遍历方法。
摘要由CSDN通过智能技术生成