我是靠谱客的博主 天真音响,最近开发中收集的这篇文章主要介绍用邻接矩阵实现DFS和BFS,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

#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);
}

最后

以上就是天真音响为你收集整理的用邻接矩阵实现DFS和BFS的全部内容,希望文章能够帮你解决用邻接矩阵实现DFS和BFS所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部