データ構造データ構造シラバス9.0
キューとは?
読み方: きゅー
1行定義(シラバス9.0 / IPA公式 · 確認日 2026-06-08)
先入れ先出し(FIFO: First In First Out)の原則でデータを管理するデータ構造。追加は末尾(enqueue)、取り出しは先頭(dequeue)から行う
詳細解説
キュー(Queue)は、データの追加(エンキュー・enqueue)を末尾に、取り出し(デキュー・dequeue)を先頭から行う先入れ先出し(FIFO: First In, First Out)のデータ構造です。実生活では「行列(待ち列)」に例えられます。先に並んだ人から先にサービスを受ける仕組みと同じです。コンピュータシステムでの主な用途は、CPUのタスクスケジューリング(処理待ちプロセスの管理)、プリンタの印刷ジョブ管理、ネットワークのパケットバッファリングなどです。スタックとの最大の違いは取り出す端(先頭 vs 最上部)にあります。変形として「両端キュー(デキュー・Deque)」(先頭と末尾の両方から追加・取り出しが可能)、「優先度付きキュー(Priority Queue)」(優先度が高い要素から取り出す、ヒープで実装される)があります。FE試験では「キューへの操作のトレース(enqueue/dequeue後の状態)」「スタックとの違い(FIFO vs LIFO)」が頻出です。リングバッファ(循環バッファ)を使ったキューの実装も出題されることがあります。
FE試験での出題ポイント
- 1FIFO(先入れ先出し):スタック(LIFO)との最大の違い
- 2enqueue(末尾追加)/dequeue(先頭取り出し)のトレース
- 3優先度付きキュー:優先度順に取り出す(ヒープで実装)
- 4CPU処理待ちキュー・プリンタスプールなど実際の使用例
関連用語
IPA シラバス 9.0 準拠 / 最終更新: 2026-06-08