n個頂點和
e條邊的無向圖,請用dfs和bfs分別列出其所有的連通集。假設頂點從0到n−
1編號。進行搜尋時,假設我們總是從編號最小的頂點出發,按編號遞增的順序訪問鄰接點。
輸入第1行給出2個整數n(
010)和e
,分別是圖的頂點數和邊數。隨後
e行,每行給出一條邊的兩個端點。每行中的數字之間用1空格分隔。
按照""的格式,每行輸出乙個連通集。先輸出dfs的結果,再輸出bfs的結果。
8 6
0 70 1
2 04 1
2 43 5
#include #include #include using namespace std;
#define maxnode 10
typedef struct
graph;
void dfs(vector&flag,graph &g,int node)//圖的深度優先遍歷
//根據深度優先遍歷輸出圖的聯通集團
vectorflag(n,0);//結點是否被訪問的標記向量
for (int i=0; iflag1(n,0);//結點是否被訪問的標記向量
queueq;
for (int i=0; i"<}
} }
資料結構演算法爬坑日記十八
思想 使用貪心演算法進行求解時,也是將乙個大問題分為若干小問題進行求解,在求解時,每一步都使用當前問題 的最優解,從而希望最終的結果也是最優的.貪心演算法得到的結果不一定是最優的結果,但都是與最優解接近的 結果求解集合覆蓋問題 問題描述 有若干個電台,每個電台覆蓋若干個地區,找出覆蓋所有地區的最少電...
C 資料結構之迴圈鍊錶 十八
c stl中的鍊錶 include list.h 我做的鍊錶 using namespace std intmain cout 測試一下迴圈 endl listiterator int iter intlist cout iter.first endl cout iter.next endl cou...
C 資料結構之堆 二十八
參考部落格1 資料結構 堆 heap 參考部落格2 資料結構堆的各種操作與演算法,程式設計師必備基礎資料結構 簡單介紹 參考部落格3 資料結構 堆 heap 在後台開發人員的面試中,有這麼乙個經典的題目,我們有一堆定時任務,每個任務都有執行時間,這堆定時任務還有可能會不停的增加,要求我們設計乙個資料...