基於鄰接表的廣度優先搜尋遍歷

2021-06-23 06:54:23 字數 1026 閱讀 6638

description

給定乙個無向連通圖,頂點編號從0到n-1,用廣度優先搜尋(bfs)遍歷,輸出從某個頂點出發的遍歷序列。(同乙個結點的同層鄰接點,節點編號小的優先遍歷)

input

輸入第一行為整數n(0< n <100),表示資料的組數。 

對於每組資料,第一行是三個整數k,m,t(0<k<100,0<m<(k-1)*k/2,0< t<k),表示有m條邊,k個頂點,t為遍歷的起始頂點。 

下面的m行,每行是空格隔開的兩個整數u,v,表示一條連線u,v頂點的無向邊。

output

輸出有n行,對應n組輸出,每行為用空格隔開的k個整數,對應一組資料,表示bfs的遍歷結果。

sample input

1

6 7 0

0 30 4

1 41 5

2 32 4

3 5

sample output

0 3 4 2 5 1
**(用臨接表做):
#include#include#includeint vis[101];

int n,m,k;int shu[100],sh=1;

struct node

*head[110];

void add(int u, int v)

;void bfs(int t)

else

p=p->next;

}for(int i=1;ib[j])

for(int i=1;iprintf(" %d",b[i]);

for(int i=1;ibfs(b[i]);

}int main()

printf("%d",t);

bfs(t);

printf("\n");

}return 0;

}

鄰接表 深度優先遍歷和廣度優先遍歷

9天沒有摸c語言,手很生啊!唉,考試終於結束了,就剩三門了。演算法 資料結構太重要了,不要忽視啊!include using namespace std define maxsize 100 int v maxsize 標誌位,判斷該結點有沒有被訪問 typedef struct arcnode 定...

廣度優先搜尋 鄰接矩陣

需要了解的是,圖的廣度搜尋遍歷類似於二叉樹的層次遍歷,用到了隊的操作 如下 include include define ok 1 define error 0 define true 1 define false 0 define maxvex 100typedef int datatype 設定...

BFS廣度優先搜尋遍歷

廣度優先搜尋遍歷 problem description 給定乙個無向連通圖,頂點編號從0到n 1,用廣度優先搜尋 bfs 遍歷,輸出從某個頂點出發的遍歷序列。同乙個結點的同層鄰接點,節點編號小的優先遍歷 input 輸入第一行為整數n 0 n 100 表示資料的組數。對於每組資料,第一行是三個整數...