7-2 列出连通集 (25 分)
给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集。假设顶点从0到N−1编号。进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点。
输入格式:
输入第1行给出2个整数N(0<N≤10)和E,分别是图的顶点数和边数。随后E行,每行给出一条边的两个端点。每行中的数字之间用1空格分隔。
输出格式:
按照"{ v1 v2 … vk}"的格式,每行输出一个连通集。先输出DFS的结果,再输出BFS的结果。
输入样例:
8 6
0 7
0 1
2 0
4 1
2 4
3 5
输出样例:
{ 0 1 4 2 7 }
{ 3 5 }
{ 6 }
{ 0 1 2 7 4 }
{ 3 5 }
{ 6 }
列出连通集,DFS和BFS两种不同的方法堆邻接矩阵进行遍历
#include<stdio.h>
#include<string.h>
int visit[100]={0};
int G[100][100];
void DFS(int i,int n);
void BFS(int i,int n);int main(void) {int n,i,m,a,b;scanf ("%d %d",&n,&m);for (i=0;i<m;i++) {scanf ("%d %d",&a,&b);G[a][b]=G[b][a]=1;}for (i=0;i<n;i++) {if (visit[i]==0) {printf ("{");DFS(i,n);printf (" }\n");}}for (i=0;i<n;i++) {visit[i]=0;}//visit[100]={0};for (i=0;i<n;i++) {if (visit[i]==0) {printf ("{");BFS(i,n);printf (" }\n");}}return 0;
}
void DFS(int i,int n) {int j;printf (" %d",i);visit[i]=1;for (j=0;j<n;j++) {if(visit[j]==0&&G[i][j]==1) {DFS(j,n);}}
}
void BFS(int i,int n) {int a[100],j,x=-1,y=-1,last=0,v;visit[i]=1;a[++x]=i;while(1) {if (x==y) break;v=a[++y];printf (" %d",v);for (j=0;j<n;j++) {if (visit[j]==0&&G[v][j]==1) {a[++x]=j;visit[j]=1;}}}
}
7-2 列出连通集 (25 分)相关推荐
- 7-201 列出连通集 (25 分)
7-201 列出连通集 (25 分) 给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集.假设顶点从0到N−1编号.进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的 ...
- 7-2 列出连通集 (25分)
文章目录 7-2 列出连通集 (25分) 输入格式: 输出格式: 输入样例: 输出样例: 题解 伪代码 代码 7-2 列出连通集 (25分) 给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别 ...
- 7-6 列出连通集 (25 分)(详解)
列出连通集 1:思路 : 利用了邻接矩阵储存数据并建图,然后就是 DFS遍历和BFS遍历 只不过是本题需要输出的是非连通图 连通分量 外加俩函数搞定 2:上码 #include<bits/std ...
- 列出连通集 (25 分)【DFS与BFS模板】
立志用最少的代码做最高效的表达 给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集.假设顶点从0到N−1编号.进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访 ...
- 7-6 列出连通集 (25 分)(C语言实现)
给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集.假设顶点从0到N−1编号.进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点. 输入格式: 输入第1 ...
- 7-5 列出连通集 (6 分)
7-5 列出连通集 (6 分) 给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集.假设顶点从0到N−1编号.进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访 ...
- 列出连通集(java)
7-6 列出连通集 (25 分) 给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集.假设顶点从0到N−1编号.进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序 ...
- 06-图1 列出连通集 —— 非联通图的DFS与BFS
06-图1 列出连通集 (25 分) 给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集.假设顶点从0到N−1编号.进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的 ...
- 7-1 列出连通集(25 分)
7-1 列出连通集(25 分) 给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集.假设顶点从0到N−1编号.进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访 ...
最新文章
- 调用WebService时加入身份验证,以拒绝未授权的访问
- JAVA I/O操作那些事之标准I/0
- Thread 中的run() 与start() 方法
- 2021年安徽高考英语口试成绩查询,2021高考英语口语考试成绩
- redis api-list
- CentOS 网络设置修改
- Django模板系统 运算
- 最小函数值(信息学奥赛一本通-T1370)
- 【PE】手动给PE文件添加一段代码MessageBoxA
- 蓝桥杯 ALGO-94 算法训练 新生舞会
- JavaScript中的.trim()无法在IE中运行
- CentOS7.6安装WirёGuαrd(一)
- 2017-2018-2 20179302 《网络攻防》第三周作业
- 如何在Ubuntu18.4中设置ERPNEXT开源ERP生产环境开机运行
- 计算机检索的截词检索方法,常用的截词检索有哪些
- 大学计算机python基础_大学计算机python基础课件2015lecture17
- Latex制作三线表 Latex制作复杂表格 加彩色边框高亮显示
- csdn格式字体、样式、排版
- System.arraycopy()详解
- Python基础 | Spyder的使用
热门文章
- 十二.vue-resourse实现get,post,jsonp请求
- Java零基础入门学习教程(纯干货知识点+视频资源)
- Libtool library used but LIBTOOL is undefined
- ImportError: No module named qbo_talk.srv
- 网络与协议2022 - Practice Questions - Block 1
- 【JavaSE专栏2】JDK、JRE和JVM
- css 宽度为百分比, 高度和宽度相等的设置
- IE中直接访问html,????? help!在IE中用Applet如何访问所在的HTML吗?
- HTTP HTTPS 创建CA证书
- Win11或Win10重置电脑提示“找不到恢复环境”