bfs和dfs数组实现
来源:互联网 发布:dnf深度优化 编辑:程序博客网 时间:2024/05/24 01:49
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#include<queue>
using namespace std;
int d[205][205];
int visit[205];
int Node[205];
int n;
void dfs(int x)
{
printf("%d",Node[x]);
visit[x]=1;
for(int i=0;i<n;i++){
if(!visit[i]&&d[x][i]!=0) {
dfs(i);
}
}
}
void bfs(int x)
{
memset(visit,0,sizeof(visit));
queue<int> q;
q.push(x);
visit[x]=1;
while(!q.empty()) {
int temp=q.front();
q.pop();
for(int i=0;i<n;i++){
if(!visit[i]&&d[temp][i]==1) {
visit[i]=1; q.push(i);
}
}
printf("%d",Node[temp]);
}
}
int main()
{
printf("请输入点的个数\n");
scanf("%d",&n);
memset(visit,0,sizeof(visit));
memset(d,-1,sizeof(-1));
printf("请输入点\n");
for(int i=0;i<n;i++) {
scanf("%d",&Node[i]);
}
printf("请输入边\n");
while(1) {
int u,v;
scanf("%d%d",&u,&v);
if(u==-1&&v==-1) break;
d[u][v]=1; d[v][u]=1;
}
printf("dfs");
dfs(0);
printf("\n");
printf("bfs");
bfs(0);
}
#include<iostream>
#include<cstring>
#include<algorithm>
#include<queue>
using namespace std;
int d[205][205];
int visit[205];
int Node[205];
int n;
void dfs(int x)
{
printf("%d",Node[x]);
visit[x]=1;
for(int i=0;i<n;i++){
if(!visit[i]&&d[x][i]!=0) {
dfs(i);
}
}
}
void bfs(int x)
{
memset(visit,0,sizeof(visit));
queue<int> q;
q.push(x);
visit[x]=1;
while(!q.empty()) {
int temp=q.front();
q.pop();
for(int i=0;i<n;i++){
if(!visit[i]&&d[temp][i]==1) {
visit[i]=1; q.push(i);
}
}
printf("%d",Node[temp]);
}
}
int main()
{
printf("请输入点的个数\n");
scanf("%d",&n);
memset(visit,0,sizeof(visit));
memset(d,-1,sizeof(-1));
printf("请输入点\n");
for(int i=0;i<n;i++) {
scanf("%d",&Node[i]);
}
printf("请输入边\n");
while(1) {
int u,v;
scanf("%d%d",&u,&v);
if(u==-1&&v==-1) break;
d[u][v]=1; d[v][u]=1;
}
printf("dfs");
dfs(0);
printf("\n");
printf("bfs");
bfs(0);
}
阅读全文
0 0
- bfs和dfs数组实现
- java 实现DFS和BFS
- BFS和DFS详解以及java实现
- BFS和DFS的java实现
- 自己动手实现图的BFS和DFS
- 《算法导论》BFS和DFS实现
- BFS和DFS详解以及java实现
- dfs与bfs实现
- DFS和BFS
- BFS和DFS模板
- BFS和DFS算法
- BFS和DFS算法
- BFS和DFS
- dfs 和 bfs 解析
- POJ3083 -- BFS和DFS
- bfs 和 dfs 专题
- 关于BFS和DFS
- DFS和BFS模板
- JPA用TABLE生成主键
- 笔记:java、android网络交互频繁gc
- 机器学习中常用的距离简介
- 3D人脸成像技术整理
- 20171219-test DNS-bat 脚本
- bfs和dfs数组实现
- 三线程猜数字
- 12.19培训日记
- 在ASP.NET中用生成二维码
- Java四种访问修饰符_测试&详解
- 树莓派笔记1:系统安装、配置
- Linux程序设计——入门
- 爬虫小白第一篇 西刺代理
- Three Types of Learning