SDUT-数据结构实验之图论一:基于邻接矩阵的广度优先搜索遍历
来源:互联网 发布:c盘里面的windows.old 编辑:程序博客网 时间:2024/06/05 13:10
数据结构实验之图论一:基于邻接矩阵的广度优先搜索遍历
Time Limit: 1000MS Memory Limit: 65536KB
Submit Statistic Discuss
Problem Description
给定一个无向连通图,顶点编号从0到n-1,用广度优先搜索(BFS)遍历,输出从某个顶点出发的遍历序列。(同一个结点的同层邻接点,节点编号小的优先遍历)
Input
输入第一行为整数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顶点的无向边。
Output
输出有n行,对应n组输出,每行为用空格隔开的k个整数,对应一组数据,表示BFS的遍历结果。
Example Input
16 7 00 30 41 41 52 32 43 5
Example Output
0 3 4 2 5 1
Hint
以邻接矩阵作为存储结构。
Node1:
#include <bits/stdc++.h>using namespace std;int Map[110][110];int v[110];int k,m,t;int s[110],num;void BFS(int t){ int p; queue<int>Q; Q.push(t); while(!Q.empty()) { p=Q.front(); Q.pop(); for(int i=0; i<k; i++) { if(Map[p][i]==1&&v[i]==0) { v[i]=1; s[num++]=i; Q.push(i); //break(因为要求输出同层邻接点若终止循环将无法实现) } } }}int main(){ int T; scanf("%d",&T); while(T--) { num=0; memset(Map,0,sizeof(Map)); memset(v,0,sizeof(v)); scanf("%d%d%d",&k,&m,&t); for(int i=0; i<m; i++) { int x,y; cin>>x>>y; Map[x][y]=Map[y][x]=1; } v[t]=1;s[num++]=t; BFS(t); for(int i=0;i<num;i++) if(i==0) cout<<s[i]; else cout<<' '<<s[i]; cout<<endl; } return 0;}
Node:2
#include <bits/stdc++.h>using namespace std;int Map[111][111],v[111],ans[111];int k,m,t,h,ta;void BFS(int n){h++;for(int i=0;i<k;i++){if(Map[n][i]==1&&v[i]==0){ans[ta++]=i;v[i]=1;}}if(h<=ta)BFS(ans[h]);}int main(){int T,x,y,i;scanf("%d",&T);while(T--){ h=0,ta=1;memset(Map,0,sizeof(Map));memset(v,0,sizeof(v));scanf("%d%d%d",&k,&m,&t);for(i=0;i<m;i++){scanf("%d%d",&x,&y);Map[x][y]=Map[y][x]=1;}ans[0]=t;v[t]=1;BFS(t);for(i=0;i<ta;i++)printf("%d%c",ans[i],i==ta-1?'\n':' ');}return 0;}
阅读全文
0 0
- SDUT-数据结构实验之图论一:基于邻接矩阵的广度优先搜索遍历
- [SDUT](2141)数据结构实验之图论一:基于邻接矩阵的广度优先搜索遍历 ---BFS(图)
- SDUT 2141 数据结构实验之图论一:基于邻接矩阵的广度优先搜索遍历
- SDUT-2141-数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 【2141】数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历 (SDUT)
- SDUT OJ 2413 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- SDUT 2141 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历 sdut oj 2141
- SDUT OJ数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- sdut oj2141 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历(BFS)
- sdut 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- SDUT 2141 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- Window的scrollX、innerWidth、outerWidth
- C++类的内存地址存放问题
- PHP 脚本文件使用 “#!/usr/bin/env php” 并执行时提示 No such file or directory
- HTML5新增元素、属性以及表单,正则表达式
- Hadoop中 MapReduce中InputSplit的分析
- SDUT-数据结构实验之图论一:基于邻接矩阵的广度优先搜索遍历
- git的常用操作(克隆到本地和推送到远程仓库)
- 分配排序之--计数排序
- 【caffe】使用draw_net绘制net结构
- HDU 1394 线段树统计逆序对 解题报告
- 安装mysql遇到服务已经存在的错误
- ios------app跳转到appStore评分
- 认识Java 反射机制
- Tornado