跳至主要內容

圖上的前沿和已訪問狀態

模擬載入中

Open Model Lab 正在為這個概念準備即時實驗台、控制項與圖表區。

總結

你學會了甚麼

建議下一步
打開概念測驗不離開這個概念,先確認核心想法是否已經掌握。
接下來讀甚麼
排序與演算法權衡比較圖遍歷記錄與可見列表工作

關鍵重點

  1. Frontier means discovered and waiting to be expanded.
  2. Visited means the node's neighbors have already been checked.
  3. Repeat edges become safe skips only when the visited set is tracked honestly.

常見迷思

Frontier and visited are not two names for the same set; they mark different stages of graph-search work.

前沿節點已經被佔領但尚未展開。已訪問節點已經使用過其鄰居。

Keep the update rule and repeat-skip count close to the graph state.

  1. Search bookkeeping

    延伸一個節點將其移入已訪問集,同時新鄰居加入等待的前沿。

  2. 重複工作計數

    當檢查的鄰居不是新的發現時,會出現重複工作。

為什麼會這樣

解釋

在包含迴圈的圖上,前沿和已訪問狀態不是同一回事。前沿儲存已經被佔領但還未展開的節點。已訪問狀態標記鄰居已經被使用的節點。

這種區分防止了圖遍歷無休止地重複在同一迴圈上工作。這個試驗保持重複跳過、前沿大小和已訪問節點一起可見,使得迴圈處理感覺像是明確的記錄而不是隱藏的魔法。

重點

01前沿節點是等待的工作,不是已完成的工作。
02已訪問狀態意味著該節點的鄰居已經被使用過,因此可以誠實地跳過返回到它的重複邊。
03當搜尋保持佔領、等待和完成節點區分時,迴圈變得可管理。

例題

例題

想逐步查看同一個概念如何被帶出來時,再打開這些例題。

凍結步驟

逐步查看凍結例題

凍結步驟
直接從橋迴圈試驗讀取前沿和已訪問集合。

支持者方案會解鎖已儲存學習工具、精確狀態分享,以及支援這條引導流程的更深入複習面板。

查看方案
凍結數值使用凍結參數

在橋迴圈圖上,為什麼需要同時使用前沿和已訪問狀態?

圖佈局

Bridge cycle

遍歷模式

claimed but waiting

目標節點

already expanded

1. 如實讀取前沿

A node belongs in the frontier after it has been discovered from an edge, but before the search has checked all of its own neighbors.

2. 如實讀取已訪問角色

A node belongs in visited only after its neighborhood has been used, so future edges back to it should not create new frontier work.

3. 如實讀取迴圈後果

When the bridge-cycle graph points back to visited work, count that edge as a repeat skip and leave the still-waiting frontier in place.

迴圈控制讀取

Frontier = discovered and waiting; visited = expanded and safe to skip when seen again.
The moment a backward edge appears, this distinction explains why the traversal keeps progressing instead of reopening the cycle.

快速測驗

正在載入已保存的測驗狀態。

無障礙

無障礙

當你需要把模擬與圖表轉成文字描述時,再打開這裡。

模擬顯示一個標記圖,當前節點、前沿節點和已訪問節點以不同顏色著色,以便等待的工作和已完成的工作保持區分。

一張讀取卡報告遍歷模式、當前節點、前沿大小、已訪問計數和目標,而一個提示面板顯示前沿順序和當前鄰居列表。

圖表摘要

一個圖表跟蹤已訪問節點對比前沿大小,另一個圖表跟蹤當前深度對比最深被探索深度,第三個圖表比較新發現與重複跳過的節點。

它們一起展示了迴圈處理取決於將前沿和已訪問狀態區分開來。

工作台工具與分享連結

先把穩定概念連結和精確狀態分享收起來,等你真的要重新打開或分享工作台時再展開。

試試這個設定

跳到某個命名好的實驗台狀態,或直接複製你目前正在看的狀態。分享連結會重新打開同一組控制、圖表、疊層與比較脈絡。

這個頁面已把分享設定還原到即時實驗台。

目前實驗台

橋迴圈 DFS 預設場景

這個實驗台目前顯示的是其中一個概念作者預設場景。

打開預設實驗台

已儲存設定

已儲存設定屬於支持者方案學習工具;穩定的概念連結仍會對所有人保留。

正在確認已儲存設定權限

Open Model Lab 正在判斷這個實驗台可否只儲存在本機、同步到帳戶,或打開只限支持者方案的比較工具。

複製目前設定

精準狀態分享屬於支持者方案功能;穩定的概念與段落連結仍然可用。

穩定連結

進度與下一步

把進度訊號、入門路徑接續和複習提示留在頁面裡,但不要讓它們和主要學習流程搶焦點。

進度

正在載入進度

正在為這個瀏覽器或已同步帳戶載入已儲存的概念進度,稍後才會顯示完成狀態。

入門路徑

第 6 / 6 步

演算法與搜尋基礎

圖上的前沿和已訪問狀態 在這條路徑中屬於較後面的步驟,所以先由起點開始會較清楚。

上一個步驟:深度優先搜尋和回溯路徑