码迷,mamicode.com
首页 > 其他好文 > 详细

数据结构1 - 06-图1 列出连通集

时间:2020-04-04 17:27:20      阅读:79      评论:0      收藏:0      [点我收藏+]

标签:while   value   mamicode   image   def   scan   queue   com   数据结构   

技术图片

 

技术图片
 1 #include<stdio.h>
 2 #define MAXN 10
 3 int g[MAXN][MAXN],vis[MAXN],n,e;
 4 void init();
 5 void read();
 6 void BFS(int x);
 7 void DFS(int x);
 8 int main(){
 9     int i,j;
10     scanf("%d %d",&n,&e);
11     init();
12     read();
13       
14     for(i=0;i<n;i++){
15         if(vis[i]==0){
16             printf("{");
17             DFS(i);
18             printf(" }\n");
19         }
20     }
21     for(i=0;i<n;i++) vis[i]=0;
22     for(i=0;i<n;i++){
23         if(vis[i]==0){
24             printf("{");
25             BFS(i);
26             printf(" }\n");
27         }
28     }
29 
30     return 0;
31 }
32 void init(){
33     int i,j;
34     for(i=0;i<n;i++) vis[i]=0;
35     for(i=0;i<n;i++)
36       for(j=0;j<n;j++){
37           g[i][j]=0;
38       }
39 }
40 void read(){
41     int i,v1,v2;
42      for(i=1;i<=e;i++){
43         scanf("%d %d",&v1,&v2);
44         g[v1][v2]= 1;
45         g[v2][v1]= 1;
46     }
47 }
48 void DFS(int x){
49     int i;
50     vis[x]=1;
51     printf(" %d",x);
52     for(i=0;i<n;i++){
53         if(vis[i]==0 && i!=x && g[x][i]!=0) DFS(i);
54     }
55 
56 }
57 void BFS(int x){
58     int i,queue[MAXN],front,rear,value;
59     front=-1;rear=0;
60     queue[0] = x;
61     vis[x]=1;
62     while(front!=rear){
63         front = (front+1)%MAXN;
64         value = queue[front];
65         printf(" %d",value);
66         for(i=0;i<n;i++){
67             if(i!=value && g[value][i]!=0 && vis[i]==0){
68                 if(((rear+1)%MAXN)==front) break;
69                 else {
70                     rear = (rear+1)%MAXN;
71                     queue[rear] = i;
72                     vis[i]=1;
73                 }
74             }
75         }
76     }
77     
78 }
View Code

 

数据结构1 - 06-图1 列出连通集

标签:while   value   mamicode   image   def   scan   queue   com   数据结构   

原文地址:https://www.cnblogs.com/Learn-Excel/p/12632689.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!