【筆記】BFS (Breadth First Search,廣度優先搜尋) - Yui ...
文章推薦指數: 80 %
【筆記】BFS (Breadth First Search,廣度優先搜尋) · 每拜訪一個鄰居,就一併把可行「鄰居的鄰居」加入queue的尾端。
距離要加上1。
· 拜訪過所有可通行的點 ...
SkiptocontentSkiptoblogsidebar
參考基礎圖論【筆記】【用途】在樹(tree)或圖(graph)上找出從特定起點出發,抵達指定終點的最短距離(shortestpath)。
【觀念】利用queue資料先進先出的特性來確保「先被搜尋到的頂點,會先成為下一個搜尋起點」。
【實作】以queue方式實現。
【筆記】【範例】ZeroJudged453:三、最短距離【題解】利用BFS(BreadstFirstSearch,廣度優先搜尋)找出起點與終點間的最短距離。
每個座標點的距離初始值設為0或-1,順便當成這個點是否搜索過的flag。
從起點開始檢查上下左右四個座標,把能通行的「最近」而且「還沒拜訪過」的鄰居點加進queue。
這些直接鄰居們的距離要加上1。
每拜訪一個鄰居,就一併把可行「鄰居的鄰居」加入queue的尾端。
距離要加上1。
拜訪過所有可通行的點之後,就可計算出從起點到這些點之間的最短距離。
#include
延伸文章資訊
- 1【筆記】BFS (Breadth First Search,廣度優先搜尋) - Yui ...
【筆記】BFS (Breadth First Search,廣度優先搜尋) · 每拜訪一個鄰居,就一併把可行「鄰居的鄰居」加入queue的尾端。距離要加上1。 · 拜訪過所有可通行的點 ...
- 2深度優先搜尋(DFS)和廣度優先搜尋(BFS)演算法 - MagicLen
- 3广度优先搜索- 维基百科,自由的百科全书
广度优先搜索算法(英語:Breadth-First Search,縮寫為BFS),又譯作寬度優先搜索,或橫向優先搜索,是一種圖形搜索演算法。簡單的說,BFS是從根節點開始,沿着树的 ...
- 4Graph: Breadth-First Search(BFS,廣度優先搜尋)
演算法
- 5【Day33】[演算法]-深度優先搜尋DFS與廣度優先搜尋BFS
深度優先搜尋(Depth-First Search,DFS)與廣度優先搜尋(Breadth-First Search, BFS),是可以用來走訪或搜尋樹節點與圖頂點的演算法,先前介紹的二元樹 ...