民國106年 第2梯次 電腦軟體設計(JAVA)乙級 學科
第35題
若有一堆疊( S t a c k ) 的資料結構,P U S H ( X ) 代表將暫存器X 的內容放入堆疊當中,P O P ( X ) 代表從堆疊取出一個數字…
題目
若有一堆疊( S t a c k ) 的資料結構,P U S H ( X ) 代表將暫存器X 的內容放入堆疊當中,P O P ( X ) 代表從堆疊取出一個數字放入暫存器X 中。假設暫存器A、B、C、D 的內容分別為20、30、40、50,則依序執行P U S H ( A )、P U S H ( B )、P U S H ( C )、P O P ( A )、P U S H ( D )、P U S H ( B ) 、 P O P ( A ) 、P O P ( B ) 後,暫存器B 中的內容為何?
- (1) 20
- (2) 30
- (3) 40
- (4) 50
官方答案
(4) 50
解析
堆疊為後進先出(LIFO)。依序執行:PUSH(A)、PUSH(B)、PUSH(C)後堆疊內容為 20、30、40;POP(A)取出 40 放入 A,堆疊剩 20、30;PUSH(D)推入 50;PUSH(B)把 30 再推入,堆疊為 20、30、50、30;POP(A)取出 30 放入 A;POP(B)取出最頂端的 50 放入 B。故暫存器 B 的內容為 50。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。