公務人員特種考試計算機大意104 年第 38 題單選題
下列何種結構是採用「先進後出」的順序?
A二元搜尋樹(binary search tree)
B佇列(queue)
C鏈結串列(linked list)
D堆疊(stack)正確答案
D正確答案
堆疊 (Stack) 採 LIFO「先進後出」,佇列 (Queue) 採 FIFO「先進先出」,是資料結構最基本對照。
為什麼答案是 D
堆疊採「先進後出 (LIFO, Last In First Out)」,像疊盤子,最後放的最先拿。操作為 push(推入)與 pop(彈出),皆在頂端進行。
載入中…
完整詳解
Pro · 無限重點 堆疊 (Stack) 採 LIFO「先進後出」,佇列 (Queue) 採 FIFO「先進先出」,是資料結構最基本對照。
看到「先進後出 / LIFO」直接選 Stack;看到「先進先出 / FIFO」直接選 Queue。
逐選項分析
A✕
二元搜尋樹是依鍵值大小排列的階層結構(左子樹<根<右子樹),用於快速搜尋,與進出順序無關。
B✕ 陷阱
佇列採「先進先出 (FIFO)」,像排隊買票,先來的先服務。常被拿來與 Stack 對照混淆,千萬別選錯。
C✕
鏈結串列只是用指標串接節點的線性結構,可任意插入/刪除,本身不規定進出順序。
D✓ 正確
堆疊採「先進後出 (LIFO, Last In First Out)」,像疊盤子,最後放的最先拿。操作為 push(推入)與 pop(彈出),皆在頂端進行。
Stack vs Queue 核心對照
| 結構 | 順序 | 操作 | 生活比喻 |
|---|
| 堆疊 Stack | LIFO 先進後出 | push / pop | 疊盤子、彈匣子彈 |
| 佇列 Queue | FIFO 先進先出 | enqueue / dequeue | 排隊買票 |
| 二元搜尋樹 | 依鍵值排序 | insert / search / delete | 字典查詢 |
| 鏈結串列 | 線性連接 | 指標串接 | 火車車廂 |
Stack 與 Queue 是考試最愛對照組。「先進後出」= Stack;「先進先出」= Queue。讀題時看到「後出 / 倒出 / 最後放的先拿」立刻鎖定堆疊,別被 Queue 的中文「佇列」唬住。