組み込み開発のためのPython · レッスン 149 / 220

キューを実装する

キューは先入れ先出しの構造です。listの先頭popは要素移動が必要なため、両端操作にはcollections.dequeを使います。

キューは先入れ先出しの構造です。listの先頭popは要素移動が必要なため、両端操作にはcollections.dequeを使います。 仕組みだけでなく、検証方法と運用上の注意も具体例で確認します。

基本の考え方

キューは先入れ先出しの構造です。listの先頭popは要素移動が必要なため、両端操作にはcollections.dequeを使います。

安全に試すための確認

計算量だけでなく入力条件、重複値、空データ、最悪ケースを確かめます。組み込み用途ではメモリ上限と実行時間を実測し、標準ライブラリの利用も検討してください。

コード例

手元のPython環境に貼り付ける前に、使用しているPythonの版と対象ライブラリの対応を確認してください。

from collections import deque

queue = deque(["job-1", "job-2"])
queue.append("job-3")
print(queue.popleft())

手を動かす課題

複数の処理要求を到着順に処理し、空キューのケースもテストしてください。

参考資料

「データ構造とアルゴリズム」の章一覧へ