民國108年 第3梯次 電腦軟體應用乙級 學科

第32題

若一個堆疊(Stack)可存放5 個元素,連續push 5 筆資料後,再繼續push 1 筆資料會

題目

若一個堆疊(Stack)可存放5 個元素,連續push 5 筆資料後,再繼續push 1 筆資料會

  1. (1) 將第1 筆資料pop 出來
  2. (2) 將第5 筆資料pop 出來
  3. (3) 將第2 筆資料pop 出來
  4. (4) 失敗,不能再push 資料進去

官方答案

(4) 失敗,不能再push 資料進去

解析

堆疊(Stack)是一種後進先出(LIFO)的資料結構,具有固定容量。題目設定堆疊最多可存放 5 個元素,依序 push 5 筆資料後堆疊已達滿載(top 指向第 5 筆)。當容量已滿時,若再嘗試 push 第 6 筆資料,標準實作會發生「堆疊溢位(Stack Overflow)」,作業失敗且不會自動將任何資料 pop 出來。選項1、2、3 所述「自動 pop 第1、5、2 筆」並非堆疊的定義行為,堆疊不會因滿載而自動拋出舊資料。故正確答案為選項4:失敗,不能再 push 資料進去。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料