- 『Pythonチュートリアル』P44より
目次
リストをスタックとして使う
- リストのメソッドを使って、リストをスタックとして使える
- スタックでは最後に追加された要素が最初に取得される(「後入れ先出し(LIFO:last-in, first-out)」)
- スタックのトップにアイテムを積むには append() を使う
- スタックのトップからアイテムを取得するには、インデックスを指定しない pop() を使う
- ちなみに、スタックでは、データを入れることを push、取り出すことを pop とよぶ

リストをキュートとして使う
- リストはキューとしても使える
- キューは要素を入れた順に取得する(「先入れ先出し(FIFO:first-in, first-out)」)
- リストの末尾で append や pop するのは高速だが
- リストの「先頭」付近での insert や pop は遅い!
- そのため、キューの実装には
collections.dequeを使う - deque は 先頭と末尾の両方で「要素の追加・削除」「アクセス」が高速になるように設計されている
- ただし、deque は両端以外の要素へのそれらは遅い
- 使い方はほぼリストとそのまま同じことができる。
- リストに変換したいときは,
list(deque(L))でよい - ちなみに、キューでは、データを入れることをエンキュー(enqueur)、取り出すことをデキュー(dequeue)とよぶ
