給定乙個有n個頂點和e條邊的無向圖,請用dfs和bfs分別列出其所有的連通集。假設頂點從0到n−1編號。進行搜尋時,假設我們總是從編號最小的頂點出發,按編號遞增的順序訪問鄰接點。
輸入第1行給出2個整數n(0按照""的格式,每行輸出乙個連通集。先輸出dfs的結果,再輸出bfs的結果。
8 6
0 70 1
2 04 1
2 43 5
在演算法題中快速實現圖的方法是直接用全域性變數儲存鄰接矩陣,訪問狀態陣列,點數和邊數。使用dfs和bfs來判斷圖的連通度,dfs和bfs的**要熟練,bfs佇列直接用stl實現。
#include#include #define n 15
#define max_size 150
using namespace std;
int g[n][n], nv, ne;
bool visited[n];
void initvisit()
void dfs(int v)
}void listcomponentswithdfs()\n");
} }}void bfs(int v)
} }}void listcomponentswithbfs()\n");
} }}void creategraph()
} for (int i = 0; i < ne; i++)
}int main()
列出連通集
給定乙個有n個頂點和e條邊的無向圖,請用dfs和bfs分別列出其所有的連通集。假設頂點從0到n 1編號。進行搜尋時,假設我們總是從編號最小的頂點出發,按編號遞增的順序訪問鄰接點。輸入第1行給出2個整數n 0按照 的格式,每行輸出乙個連通集。先輸出dfs的結果,再輸出bfs的結果。純dfs和bfs的練...
列出連通集
7 15 列出連通集 25 分 給定乙個有n個頂點和e條邊的無向圖,請用dfs和bfs分別列出其所有的連通集。假設頂點從0到n 1編號。進行搜尋時,假設我們總是從編號最小的頂點出發,按編號遞增的順序訪問鄰接點。輸入格式 輸入第1行給出2個整數n 0輸出格式 按照 的格式,每行輸出乙個連通集。先輸出d...
列出連通集
7 6 列出連通集 25 分 給定乙個有n個頂點和e條邊的無向圖,請用dfs和bfs分別列出其所有的連通集。假設頂點從0到n 1編號。進行搜尋時,假設我們總是從編號最小的頂點出發,按編號遞增的順序訪問鄰接點。輸入第1行給出2個整數n 0按照 的格式,每行輸出乙個連通集。先輸出dfs的結果,再輸出bf...