Queue(FIFO)

FIFO を実現できるデータ構造、Queue.

コンピュータにおける基本的なデータ構造の1つ。最初に入れたデータが最初に取り出されるようなデータ構造。スタック(FILO)と対比されることが多い。FIFO(First In, First Out)とも呼ばれる。

fifo image

Insider’s Computer Dictionary:キュー とは? - @IT

Ruby x Queue

Ruby で Queue を取り扱ってみる。

q = Queue.new

値を追加

q << 1
q.enq 2
q.push 3

書き方いろいろあるけどやっていることは一緒。

値を取り出す

q.deq #=> 1
q.pop #=> 2
q.shift #=> 3

書き方いろいろあるけどやっていることは一緒。

参考

class Thread::Queue (Ruby 3.1 リファレンスマニュアル)