数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
来源:互联网 发布:如何下载qq软件 编辑:程序博客网 时间:2024/05/19 06:50
数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
Time Limit: 1000MS Memory limit: 65536K
题目描述
给定一个无向连通图,顶点编号从0到n-1,用广度优先搜索(BFS)遍历,输出从某个顶点出发的遍历序列。(同一个结点的同层邻接点,节点编号小的优先遍历)
输入
输入第一行为整数n(0< n <100),表示数据的组数。
对于每组数据,第一行是三个整数k,m,t(0<k<100,0<m<(k-1)*k/2,0< t<k),表示有m条边,k个顶点,t为遍历的起始顶点。
下面的m行,每行是空格隔开的两个整数u,v,表示一条连接u,v顶点的无向边。
对于每组数据,第一行是三个整数k,m,t(0<k<100,0<m<(k-1)*k/2,0< t<k),表示有m条边,k个顶点,t为遍历的起始顶点。
下面的m行,每行是空格隔开的两个整数u,v,表示一条连接u,v顶点的无向边。
输出
输出有n行,对应n组输出,每行为用空格隔开的k个整数,对应一组数据,表示BFS的遍历结果。
示例输入
16 7 00 30 41 41 52 32 43 5
示例输出
0 3 4 2 5 1
提示
以邻接矩阵作为存储结构。
#include <bits/stdc++.h>using namespace std;const int maxn = 110;int Map[maxn][maxn];bool vis[maxn];void BFS(int k, int t){ memset(vis, false, sizeof(vis)); int *a = new int[k+1]; int top = 0; queue<int >Q; vis[t] = true; Q.push(t); while(!Q.empty()) { int t = Q.front(); Q.pop(); a[top++] = t; for(int i = 0; i < k; i++) { if(!vis[i] && Map[t][i]) { vis[i] = true; Q.push(i); } } } for(int i = 0; i < top; i++) { if(i == top - 1) cout<<a[i]<<endl; else cout<<a[i]<<" "; }}int main(){ int n, k, m, t, u, v; cin>>n; while(n--) { memset(Map, false, sizeof(Map)); cin>>k>>m>>t; for(int i = 0; i < m; i++) { cin>>u>>v; Map[u][v] = Map[v][u] = true; } BFS(k, t); } return 0;}
0 0
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 正则表达式判断用户昵称
- (as)Android SDK在线更新镜像服务器
- 二叉树的遍历(无头结点,C语言)——更新后
- 10个不错的编程等宽字体
- update实现多表的更新
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 欢迎使用CSDN-markdown编辑器
- 趣味i**1/((i-1)**(i-1))
- PostgreSQL学习手册(数据表)
- ubuntu15.10 源码安装 tensorflow
- sql
- 笔记1----前台ajax请求,后台返回list对象集合!
- Android Fastjson解析_id 下划线字段
- Android NDK学习之二. ndk-build使用