資料結構篇 鄰接表建立與顯示

2021-09-01 04:50:32 字數 1056 閱讀 5597

每乙個頂點後面就是一條鍊錶,每個頂點都存在陣列裡。

以這張圖為例

結構如下

執行截圖

結構體定義

//邊表結點

typedef struct edgenode edgenode;

//頂點表結點

typedef struct vertexnode vertexnode, adjlist[100];

//集合

typedef struct graphadjlist;

完整程式

#include using namespace std;

//邊表結點

typedef struct edgenode edgenode;

//頂點表結點

typedef struct vertexnode vertexnode, adjlist[100];

//集合

typedef struct graphadjlist;

class adjacencylist ;

void adjacencylist::createalgraph(graphadjlist *g)

//建立邊表(頭插法)

for (k = 0; k < g->numedges; k++)

}void adjacencylist::test()

void adjacencylist::showalgraph(graphadjlist *g)

cout<

}}int main()

資料結構 鄰接多重表

上一節總結了有向圖的另外一種鏈式儲存結構 十字鍊錶,該節繼續總結無向圖的另一種鏈式儲存結構。鄰接表雖然已經能夠很好地表示無向圖了,但是無向圖訪問或者刪除一條邊 vi,vj 時需要同時訪問兩個鍊錶i和j並分別找到對應的邊結點,這給針對圖的邊的操作 標記或刪除 帶來不便利。鄰接多重表因此而演變過來的。鄰...

資料結構 鍊錶 鄰接表

在講解這個內容之前,先來回憶陣列能夠完成哪些操作 1 任意訪問乙個元素,時間複雜度為o 1 o 1 o 1 2 刪除乙個元素,要移動此後的所有元素,時間複雜度為o n o n o n 3 在任意位置之後增添乙個元素,要移動此後的所有元素,時間複雜度為o n o n o n 但如果我們的問題並不需要訪...

資料結構之DFS(鄰接表版)

圖的遍歷 是指從圖中的任一頂點出發,對圖中的所有頂點訪問一次且只訪問一次。圖的遍歷是圖的基本操作之一,很多需要對圖中每個頂點依次進行的操作都可以在遍歷中完成。圖的遍歷通常有深度優先搜尋和廣度優先搜尋。深度優先搜尋 depth first search 深度優先搜尋的基本思想如下 1 從圖中某個頂點v...