資料結構與演算法

在無向圖中,各頂點的相鄰頂點如下:A: B, C / B: A, D, E / C: A, F / D: B / E: B, F / F: C, E。從頂點 A 進行遞迴的深度優先搜尋。相鄰頂點依此處列出的順序檢查,一找到尚未拜訪的頂點就立刻前往。拜訪頂點的順序為下列何者?

  1. AA, B, C, D, E, F
  2. BA, B, D, E, C, F
  3. CA, B, D, E, F, C
查看答案與解析

正確答案:C. A, B, D, E, F, C

從 A 前往 B,再前往 B 的相鄰頂點中第一個未拜訪的 D。D 的相鄰頂點只有已拜訪的 B,因此回到 B 再前往下一個 E,接著從 E 前往未拜訪的 F,再從 F 前往其相鄰頂點 C。所以順序為 A, B, D, E, F, C。A, B, C, D, E, F 是依離起點由近到遠拜訪的廣度優先搜尋的順序。A, B, D, E, C, F 沒有從 E 前往未拜訪的 F 就折返了,不是深度優先搜尋的順序。

  • A. 這是依離起點由近到遠拜訪的廣度優先搜尋的順序。
  • B. E 的相鄰頂點中有未拜訪的 F,因此在折返到 C 之前會先前往 F。
  • C. 正確。盡量往前走,走到死路時才折返。
練習這個領域 前往領域頁面

相關計算工具

資料結構與演算法的其他題目

  1. 在無向圖中,各邊的權重(距離)為 S−A: 4、S−B: 1、A−B: 2、A−C: 1、B−C: 5、C−T: 3、A−T: 6。以戴克斯特拉演算法求從 S 到 T 的最短路徑時,路徑與長度為下列何者?
  2. 要以戴克斯特拉演算法求出正確的最短路徑,關於圖的條件,下列何者正確?
  3. 工作 A~E 有「A 在 C 之前」「B 在 C 之前」「C 在 D 之前」「B 在 E 之前」「E 在 D 之前」的順序限制。滿足所有限制的工作順序(拓撲排序的結果)為下列何者?
  4. 函數 f(x, y) 定義為「若 y 為0則回傳 x,否則回傳 f(y, x mod y)」。呼叫 f(84, 36) 時的回傳值,以及 f 被呼叫的次數(含第一次呼叫)的組合為下列何者?
  5. 以遞迴將求費氏數的函數 fib(n) 定義為「若 n 在1以下則回傳 n,否則回傳 fib(n−1) + fib(n−2)」。呼叫 fib(5) 時,含第一次呼叫在內,fib 被呼叫幾次?