PTA 列出連通集 25分

2021-10-05 23:33:28 字數 1379 閱讀 7757

給定乙個有n個頂點和e條邊的無向圖,請用dfs和bfs分別列出其所有的連通集。假設頂點從0到n−1編號。進行搜尋時,假設我們總是從編號最小的頂點出發,按編號遞增的順序訪問鄰接點。

輸入格式:

輸入第1行給出2個整數n(0按照""的格式,每行輸出乙個連通集。先輸出dfs的結果,再輸出bfs的結果。

輸入樣例:

860

7012

0412

435

輸出樣例:

dfs通俗點說就是一條路不走到底不回頭,到底後回溯到分歧點繼續走,直到全部走完,而bfs是按層來的,先搜尋乙個點的全部關聯點,再搜尋第乙個關聯點的全部關聯點,直到全部搜一遍,和二叉樹的層序遍歷有一定相似之處。

ac**:

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#define eps 1e-8

#define mod 1000000007

typedef

long

long ll;

using

namespace std;

int vec[11]

[11];

int visit[11]

;int num1, num2;

queue<

int> q;

void

dfs(

int n)}}

void

bfs(

int n)

} q.

pop();

}}intmain

(void

)memset

(visit,0,

sizeof

(visit));

for(

int i =

0; i < num1; i++)"

<< endl;}}

memset

(visit,0,

sizeof

(visit));

for(

int i =

0; i < num1; i++)"

<< endl;}}

}

列出連通集 (25 分)

7 39 列出連通集 25 分 給定乙個有n個頂點和e條邊的無向圖,請用dfs和bfs分別列出其所有的連通集。假設頂點從0到n 1編號。進行搜尋時,假設我們總是從編號最小的頂點出發,按編號遞增的順序訪問鄰接點。輸入第1行給出2個整數n 0按照 的格式,每行輸出乙個連通集。先輸出dfs的結果,再輸出b...

列出連通集 25分 C語言

給定乙個有n個頂點和e條邊的無向圖,請用dfs和bfs分別列出其所有的連通集。假設頂點從0到n 1編號。進行搜尋時,假設我們總是從編號最小的頂點出發,按編號遞增的順序訪問鄰接點。輸入第1行給出2個整數n 0按照 的格式,每行輸出乙個連通集。先輸出dfs的結果,再輸出bfs的結果。860 7012 0...

PTA 列出連通集 DFS BFS

列出連通集 25分 給定乙個有n n個頂點和e e條邊的無向圖,請用dfs和bfs分別列出其所有的連通集。假設頂點從0到n 1n 1編號。進行搜尋時,假設我們總是從編號最小的頂點出發,按編號遞增的順序訪問鄰接點。輸入第1行給出2個整數nn 0 010 和ee 分別是圖的頂點數和邊數。隨後e e行,每...