原文:c++鄰接表存儲圖(無向),並用廣度優先和深度優先遍歷(實驗)

一開始我是用c寫的,后面才發現廣搜要用到隊列,所以我就直接使用c 的STL隊列來寫, 因為不想再寫多一個隊列了。這次實驗寫了兩個多鍾,因為要邊寫邊思考,太菜了哈哈。 主要參考 大話數據結構 這本書,然后加上自己的一些東西改編,這次實驗算是完成了 首先我們來看一下鄰接表是怎么存儲圖的,比如說下面有一個無向圖 則它的鄰接表是這樣的,鄰接表有兩個部分,一個是頂點表,一個是邊表。頂點表長這樣 然后就看,它 ...

2017-11-22 10:12 4 16933 推薦指數:

查看詳情

c++構造鄰接,實現深度優先遍歷廣度優先遍歷

//深度優先遍歷由遞歸實現。也可用棧來實現(與BFS隊列操作類似)。 //廣度優先遍歷由隊列實現。需要先讓開始進行遍歷的頂點入隊,再進行出隊,但是出隊需保存出隊的結點序號值作為表頭,用於遍歷該層,並同時將輔助數組visisted_B[v]置為1,以表示已經訪問,然后根據鄰接表 ...

Thu May 23 19:02:00 CST 2019 0 1166
基於鄰接存儲深度優先遍歷廣度優先遍歷

一.深度優先遍歷是連通的一種遍歷策略。其基本思想如下: 設x是當前被訪問頂點,在對x做過訪問標記后,選擇一條從x出發的未檢測過的邊(x,y)。若發現頂點y已訪問過,則重新選擇另一條從x出發的未檢測過的邊,否則沿邊(x,y)到達未曾訪問過的y,對y訪問並將其標記為已訪問過;然后從y開始搜索,直到 ...

Tue Apr 19 00:46:00 CST 2016 0 33815
基於鄰接矩陣存儲深度優先遍歷廣度優先遍歷

存儲結構相比較線性與樹來說就復雜很多,對於線性來說,是一對一的關系,所以用數組或者鏈表均可簡單存放。樹結構是一對多的關系,所以我們要將數組和鏈表的特性結合在一起才能更好的存放。 那么我們的,是多對多的情況,另外圖上的任何一個頂點都可以被看作是第一個頂點,任一頂點的鄰接點之間也不存在 ...

Wed Apr 20 20:25:00 CST 2016 0 35392
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM