地特四等申論題
107年
[統計] 資料處理概要
第 一 題
📖 題組:
一、佇列(queue)和堆疊(stack)是二種常用的資料結構。請回答下列問題。 (一)若要用深度優先的方式(depth-first search)走訪一樹狀結構(tree structure)的所有節點(node),請問佇列和堆疊,何者較適合?並說明原因。(10 分) (二)若要用廣度優先的方式(breadth-first search)走訪一樹狀結構(tree structure)的所有節點(node),請問佇列和堆疊,何者較適合?並說明原因。(10 分)
一、佇列(queue)和堆疊(stack)是二種常用的資料結構。請回答下列問題。 (一)若要用深度優先的方式(depth-first search)走訪一樹狀結構(tree structure)的所有節點(node),請問佇列和堆疊,何者較適合?並說明原因。(10 分) (二)若要用廣度優先的方式(breadth-first search)走訪一樹狀結構(tree structure)的所有節點(node),請問佇列和堆疊,何者較適合?並說明原因。(10 分)
📝 此題為申論題,共 2 小題
小題 (一)
若要用深度優先的方式(depth-first search)走訪一樹狀結構(tree structure)的所有節點(node),請問佇列和堆疊,何者較適合?並說明原因。(10 分)
思路引導 VIP
考生看到此題應先聯想深度優先搜尋(DFS)「一路到底、遇死路則回溯」的核心精神。接著連結資料結構特性:堆疊具備「後進先出(LIFO)」特質,能完美保留回溯點,因此為 DFS 的標準實作結構。
小題 (二)
若要用廣度優先的方式(breadth-first search)走訪一樹狀結構(tree structure)的所有節點(node),請問佇列和堆疊,何者較適合?並說明原因。(10 分)
思路引導 VIP
看到廣度優先搜尋(BFS),應立刻聯想到「逐層走訪」(Level-order traversal)的特性。因為必須先處理同一層的所有節點,再處理下一層,這完全符合「先進先出」(FIFO)的邏輯,故解題核心在於將 BFS 的走訪順序與佇列(Queue)的運作特性進行連結並申論。