Class: DataStructure::Queue
- Inherits:
-
Object
- Object
- DataStructure::Queue
- Defined in:
- lib/datastructure/queue.rb
Overview
First in first out (FIFO)
Instance Method Summary collapse
- #all ⇒ Object
- #dequeue ⇒ Object (also: #remove)
- #empty? ⇒ Boolean
- #enqueue(anything) ⇒ Object (also: #add)
- #first ⇒ Object
-
#initialize ⇒ Queue
constructor
A new instance of Queue.
- #size ⇒ Object (also: #length, #count)
Constructor Details
#initialize ⇒ Queue
Returns a new instance of Queue.
4 5 6 |
# File 'lib/datastructure/queue.rb', line 4 def initialize @data = Array.new end |
Instance Method Details
#all ⇒ Object
29 30 31 |
# File 'lib/datastructure/queue.rb', line 29 def all @data end |
#dequeue ⇒ Object Also known as: remove
12 13 14 15 |
# File 'lib/datastructure/queue.rb', line 12 def dequeue raise 'QueueError: There is nothing to dequeue.' if @data.size == 0 @data.shift end |
#empty? ⇒ Boolean
21 22 23 |
# File 'lib/datastructure/queue.rb', line 21 def empty? @data.empty? end |
#enqueue(anything) ⇒ Object Also known as: add
8 9 10 |
# File 'lib/datastructure/queue.rb', line 8 def enqueue anything @data << anything end |
#first ⇒ Object
17 18 19 |
# File 'lib/datastructure/queue.rb', line 17 def first @data.first end |
#size ⇒ Object Also known as: length, count
25 26 27 |
# File 'lib/datastructure/queue.rb', line 25 def size @data.size end |