DFS



#include <stdio.h> #include<string.h> #define N 10 int g[N][N]; int bz[N]; int n,m ; void DFS(int cur) { int j; bz[cur]=1; printf("V%d",cur); for(j=1;j<=n ;j++ ) if(g[cur][j] && !bz[j]) DFS(j); } void input() { int i,j,f,t ; scanf("%d%d",&n,&m); for(int i=1;i<=m ; i++) { scanf("%d%d",&f,&t); g[f][t]=g[t][f]=1; } } int main() {int i,j; memset(g,0,sizeof(g)) ; memset(bz,0,sizeof(bz)) ; input(); DFS(1); }

  

原文地址:https://www.cnblogs.com/wc1903036673/p/3461266.html