版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、寬度優(yōu)先搜索寬度優(yōu)先搜索BFSBFS寬度優(yōu)先搜索算法(又稱廣度優(yōu)先搜索)是最簡便的圖的搜索算法之一,這一算法也是很多重要的圖的算法的原型。Dijkstra單源最短路徑算法和Prim最小生成樹算法都采用了和寬度優(yōu)先搜索類似的思想。已知圖G=(VE)和一個(gè)源頂點(diǎn)s,寬度優(yōu)先搜索以一種系統(tǒng)的方式探尋G的邊,從而“發(fā)現(xiàn)”s所能到達(dá)的所有頂點(diǎn),并計(jì)算s到所有這些頂點(diǎn)的距離(最少邊數(shù)),該算法同時(shí)能生成一棵根為s且包括所有可達(dá)頂點(diǎn)的寬度優(yōu)先樹。對從
2、s可達(dá)的任意頂點(diǎn)v,寬度優(yōu)先樹中從s到v的路徑對應(yīng)于圖G中從s到v的最短路徑,即包含最小邊數(shù)的路徑。該算法對有向圖和無向圖同樣適用。之所以稱之為寬度優(yōu)先算法,是因?yàn)樗惴ㄗ允贾两K一直通過已找到和末找到頂點(diǎn)之間的邊界向外擴(kuò)展,就是說,算法首先搜索和s距離為k的所有頂點(diǎn),然后再去搜索和S距離為kl的其他頂點(diǎn)。為了保持搜索的軌跡,寬度優(yōu)先搜索為每個(gè)頂點(diǎn)著色:白色、灰色或黑色。算法開始前所有頂點(diǎn)都是白色,隨著搜索的進(jìn)行,各頂點(diǎn)會(huì)逐漸變成灰色,然后
3、成為黑色。在搜索中第一次碰到一頂點(diǎn)時(shí),我們說該頂點(diǎn)被發(fā)現(xiàn),此時(shí)該頂點(diǎn)變?yōu)榉前咨旤c(diǎn)。因此,灰色和黑色頂點(diǎn)都已被發(fā)現(xiàn),但是,寬度優(yōu)先搜索算法對它們加以區(qū)分以保證搜索以寬度優(yōu)先的方式執(zhí)行。若(uv)∈E且頂點(diǎn)u為黑色,那么頂點(diǎn)v要么是灰色,要么是黑色,就是說,所有和黑色頂點(diǎn)鄰接的頂點(diǎn)都已被發(fā)現(xiàn)。灰色頂點(diǎn)可以與一些白色頂點(diǎn)相鄰接,它們代表著已找到和未找到頂點(diǎn)之間的邊界。在寬度優(yōu)先搜索過程中建立了一棵寬度優(yōu)先樹,起始時(shí)只包含根節(jié)點(diǎn),即源頂點(diǎn)s.
4、在掃描已發(fā)現(xiàn)頂點(diǎn)u的鄰接表的過程中每發(fā)現(xiàn)一個(gè)白色頂點(diǎn)v,該頂點(diǎn)v及邊(uv)就被添加到樹中。在寬度優(yōu)先樹中,我們稱結(jié)點(diǎn)u是結(jié)點(diǎn)v的先輩或父母結(jié)點(diǎn)。因?yàn)橐粋€(gè)結(jié)點(diǎn)至多只能被發(fā)現(xiàn)一次,因此它最多只能有個(gè)父母結(jié)點(diǎn)。相對根結(jié)點(diǎn)來說祖先和后裔關(guān)系的定義和通常一樣:如果u處于樹中從根s到結(jié)點(diǎn)v的路徑中,那么u稱為v的祖先,v是u的后裔。下面的寬度優(yōu)先搜索過程BFS假定輸入圖G=(VE)采用鄰接表表示,對于圖中的每個(gè)頂點(diǎn)還采用了幾種附加的數(shù)據(jù)結(jié)構(gòu),對每
5、個(gè)頂點(diǎn)u∈V,其色彩存儲(chǔ)于變量col[u]中,結(jié)點(diǎn)u的父母存于變量π[u]中。如果u沒有父母(例如u=s或u還沒有被檢索到),則π[u]=NIL,由算法算出的源點(diǎn)s和頂點(diǎn)u之間的距離存于變量d[u]中,算法中使用了一個(gè)先進(jìn)先出隊(duì)列Q來存放灰色節(jié)點(diǎn)集合。其中head[Q]表示隊(duì)列Q的隊(duì)頭元素,Enqueue(Qv)表示將元素v入隊(duì),Dequeue(Q)表示對頭元素出隊(duì);Adj[u]表示圖中和u相鄰的節(jié)點(diǎn)集合。procedureBFS(GS
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 深度寬度優(yōu)先搜索---八數(shù)碼
- 基于寬度優(yōu)先搜索的模型檢測技術(shù)研究.pdf
- 深度優(yōu)先搜索廣度優(yōu)先搜索
- 基于寬度優(yōu)先搜索的K-medoids聚類算法研究.pdf
- 廣度優(yōu)先搜索
- 面向眾核體系結(jié)構(gòu)的寬度優(yōu)先搜索算法研究.pdf
- 并行廣度優(yōu)先搜索算法研究
- java 圖的深度優(yōu)先和廣度優(yōu)先搜索以及關(guān)鍵路徑
- 第八章 廣度優(yōu)先搜索
- 并行廣度優(yōu)先搜索算法研究.pdf
- 面向圖搜索的流寄存器文件設(shè)計(jì)與協(xié)同BFS算法優(yōu)化.pdf
- 基于BFS算法的潮流轉(zhuǎn)移快速搜索及過負(fù)荷緊急控制策略研究.pdf
- 外部知識(shí)搜索寬度的前因及其創(chuàng)新績效影響機(jī)制研究-基于正式--非正式搜索的視角.pdf
- 網(wǎng)絡(luò)原創(chuàng)文章優(yōu)先的搜索引擎排序算法研究.pdf
- 應(yīng)用最小路—廣度優(yōu)先搜索的配電系統(tǒng)可靠性評估.pdf
- 基于BFS的局部社區(qū)發(fā)現(xiàn)算法研究.pdf
- AVS2寬度優(yōu)先四叉樹CU劃分與編碼效率提升算法的研究.pdf
- 基于深度優(yōu)先搜索的短路電流計(jì)算系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 廣度優(yōu)先搜索算法在互連網(wǎng)絡(luò)通信中的應(yīng)用.pdf
- 車道寬度
評論
0/150
提交評論