Examly題庫立即開始練習
司法海巡移民特考計算機大意10617單選題

一個命名為q 的佇列(Queue)以可儲存7 個元素的環形陣列(Circular Array)來模擬,假設佇列產生後第一筆被存入(enqueue)的資料是存放於陣列索引值(index)為1 的位置(陣列索引值範圍為0 到 6),則執行以下程式片段後,陣列索引值為2 的位置儲存那一筆資料?(註:dequeue表示自佇列中移除一個物件) for(k = 1; k <= 6; k++) {q.enqueue(k); } for(k = 1; k <= 3; k++) { q.dequeue(); q.enqueue(q.dequeue()); }

A2
B4
C6正確答案
D未儲存值
答案與詳解
C
正確答案
本題考查環形陣列實作佇列(Queue)的指標追蹤。依序模擬 enqueue 與 dequeue 動作,計算 rear 指標的移動,即可得出 index 2 最後被寫入的值為 6。

為什麼答案是 C

6 是第二個迴圈 k=3 時,被重新 enqueue 的值。此時 rear 指標移動到 (1+1)%7 = 2,因此 6 被存放在 index 2 的位置。

考點:環形陣列指標考點:佇列模擬考點:環形陣列特性
載入中…

計算機大意 相關題目

想練更多計算機大意考古題?

Examly 收錄 38 萬+ 道歷屆題目,每題都有像這樣的精選詳解。免費下載,立即開練。

Download on theApp Store即將推出Google Play
黑皮