数据结构实验之图论二:图的深度遍历
来源:互联网 发布:linux cpu 超过100 编辑:程序博客网 时间:2024/06/05 02:44
数据结构实验之图论二:图的深度遍历
Time Limit: 1000MS Memory Limit: 65536KB
Submit Statistic
Problem Description
请定一个无向图,顶点编号从0到n-1,用深度优先搜索(DFS),遍历并输出。遍历时,先遍历节点编号小的。
Input
输入第一行为整数n(0 < n < 100),表示数据的组数。 对于每组数据,第一行是两个整数k,m(0 < k < 100,0 < m < k*k),表示有m条边,k个顶点。 下面的m行,每行是空格隔开的两个整数u,v,表示一条连接u,v顶点的无向边。
Output
输出有n行,对应n组输出,每行为用空格隔开的k个整数,对应一组数据,表示DFS的遍历结果。
Example Input
1
4 4
0 1
0 2
0 3
2 3
Example Output
0 1 2 3
Hint
Author
#include<stdio.h>#include<stdlib.h>#include<string.h>int a[110][110], b[110];int k, m;void DFS(int i);int main(){ int n, i, u, v; scanf("%d", &n); while(n--) { memset(a, 0, sizeof(a)); memset(b, 0, sizeof(b)); scanf("%d %d", &k, &m); for(i = 1; i <= m; i++) { scanf("%d %d", &u, &v); a[u][v] = a[v][u] = 1; } printf("0"); b[0] = 1; DFS(0); printf("\n"); }}void DFS(int i){ int j; for(j = 0; j < k; j++) { if(a[i][j] == 1 && b[j] == 0) { printf(" %d", j); b[j] = 1; DFS(j); } }}
阅读全文
0 0
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 2107 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- 数据结构实验之图论二:图的深度遍历
- UI5开发 – Eclipse编辑代码
- 设计模式:状态模式
- 程序设计入门1 分支选择三整数排序
- 51nod 1674 区间的价值 V2
- 面向对象编程基础
- 数据结构实验之图论二:图的深度遍历
- 对象和实例,对象的创建
- Redmine之RestApi集成方式
- hdu5446(数论)
- CSR 蓝牙读写
- UI5开发 – 发布到Fiori LaunchPad以及调试
- 单向循环链表的实现
- js中创建元素createElement\createTextNode\appendChild
- MATLAB中生成随机数方法总结