/*
广度优先遍历的主要思想:
首先以一个未被访问过的顶点作为起始顶点,访问其所有相邻的顶点,然后对每个相邻的顶点,再访问
它们相邻未被访问过的顶点,直到所有顶点都被访问过,遍历结束。
图的邻接矩阵存储法:
利用一个二维数组来存储,第i行第j列表示的就是顶点i到顶点j是否有边。1表示有边,∞表示没有边,将自己到自己设为0.
变量的作用:
cur存储的是当前正在遍历的顶点,二维数组e存储的就是图的边(邻接矩阵),数组book用来记录哪些顶点已经访问过,
变量sum用来记录已经访问过多少个顶点,变量n存储的是图的顶点的总个数。
*/
#include "stdio.h"
int main()
{
int i,j,n,m,a,b,cur,book[101] = {0},e[101][101];
int que[1001],head,tail;
scanf("%d %d",&n,&m);
//初始化二维矩阵
for(i = 1;i <= n;i++)
{
for(j = 1;j <= n;j++)
{
if(i == j)
{
e[i][j] = 0;
}
else
{
第5章第1节-深度和广度优先究竟是指啥-广度生成树
最新推荐文章于 2022-09-21 11:09:39 发布