問題
次のプログラムはキューにデータを入れ、順番に取り出す処理である。最終的にresultに格納される値の順序はどれか。 queue ← 空 enqueue(queue, "A") enqueue(queue, "B") enqueue(queue, "C") result ← 空文字 while (queue が空でない) result ← result + dequeue(queue) endwhile
選択肢
- 1ア "ABC"
- 2イ "CBA"
- 3ウ "BAC"
- 4エ "CAB"
解答と解説を見る
正解
1. ア "ABC"
解説
キューはFIFO(先入れ先出し)です。A→B→Cの順にエンキューした後、デキューすると同じ順A→B→Cで取り出されます。result = "" + "A" + "B" + "C" = "ABC"となります。スタック(LIFO)と区別しましょう。