数据结构--5.3图的遍历(广度优先遍历)

广度优先遍历:

广度优先遍历(BreadthFirstSearch),又称为广度优先搜索,简称BFS。

要实现对图的广度遍历,我们可以利用队列来实现。

cpp 复制代码
void BFSTraverse(MGraph G)
{
	int i,j;
	Queue Q;
	for(i=0;i<G.numVertexse;i++)
	{
		visited[i]= FALSE;
	}
	initQueue(&Q);
	for(i=0;i<G.numVertexse; i++)
	{
		if(!visited[i])
		{
			printf("%c",G.vex[i]);
			visited[i]=TURE;
			EnQueue(Q,i);
			while(!QueueEmtpty(Q))
			{
				DeQueue(&Q,&i);
				for(j=0;j<G.numVertexes;j++)
				{
					if(G.art[i][j]==1 &&  !visited[j])
					{
						printf("%c",G.vex[i]);
						visited[i] = TUURE;
						EnQueue(&Q,j);
					}
				}
			}
		}
	}
}

(参考队列)(上述为结构)

相关推荐
whn197730 分钟前
在sqllog中排查达梦阻塞会话
数据结构
哈哈很哈哈34 分钟前
逻辑回归Logistic Regression
算法·机器学习·逻辑回归
甄心爱学习39 分钟前
【极大似然估计/最大化后验】为什么逻辑回归要使用交叉熵损失函数
算法·机器学习·逻辑回归
01二进制代码漫游日记1 小时前
C/C++中的内存区域划分
c语言·jvm·数据结构·学习
郝学胜-神的一滴1 小时前
深度学习入门全解析:从核心概念到实战基础 | 技术研讨会精华总结
人工智能·python·深度学习·算法·cnn
梯度下降中1 小时前
CNN原理精讲
人工智能·算法·机器学习
Ivanqhz1 小时前
活跃范围重写(Live Range Rewriting)
开发语言·c++·后端·算法·rust
xiaoye-duck1 小时前
《算法题讲解指南:优选算法-链表》--51.两数相加,52.两两交换链表中的节点
数据结构·算法·链表
Cosolar1 小时前
阿里CoPaw进阶使用手册:从新手到高手的完整指南
人工智能·后端·算法
代码改善世界1 小时前
【数据结构】八大排序算法详解(C语言实现)|插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、归并排序、计数排序
c语言·数据结构·排序算法