邻接矩阵dfs

2022-11-20,,

#include<bits/stdc++.h>
using namespace std; int a[11][11];
bool visited[11]; void store_graph(){//邻接矩阵存储图
int i,j;
for(i = 1; i <= 10; i++)
for(j = 1; j <= 10; j++)
cin>>a[i][j];
} void dfs_graph(){
void dfs(int v);
memset(visited,false,sizeof(visited));
for(int i = 1; i <= 10; i++)
if(visited[i] == false)
dfs(i);
} int Adj(int x){
for(int i =1; i <=10; i++){
if(a[x][i] == 1&& visited[i] == false)
return i;
return 0;
}
} void dfs(int v){
int Adj(int x);
cout<<v<<' ';
visited[v]=true;
int adj = Adj(v);
while(adj != 0){
if(visited[adj] == false)
dfs(adj);
adj = Adj(v);
}
} int main(){
cout<<"初始化图:"<<endl;
store_graph(); cout<<"dfs遍历结果:"<<endl;
dfs_graph(); return 0;
}

dfs

邻接矩阵dfs的相关教程结束。

《邻接矩阵dfs.doc》

下载本文的Word格式文档,以方便收藏与打印。