Data Structs in Ruby

  • Thread starter Edipofederle Edipofederle
  • Start date
E

Edipofederle Edipofederle

Hello,


How would the implementation of such a stack or queue, and Ruby, already
has something "ready" to handle ...

Thakns.

I sorry but my english is not very good.
 
B

Bilyk, Alex

Array can act as a stack as it has #pop and #last. It can also act as a que=
ue as it also has #first and #shift. You can wrap this functionality in a Q=
ueue and Stack classes to make it more explicit if you like.

-----Original Message-----
From: (e-mail address removed) [mailto:[email protected]]
Sent: Friday, October 31, 2008 11:35 AM
To: ruby-talk ML
Subject: Data Structs in Ruby

Hello,


How would the implementation of such a stack or queue, and Ruby, already
has something "ready" to handle ...

Thakns.

I sorry but my english is not very good.
 
B

Brian Candler

Array can act as a stack as it has #pop and #last. It can also act as a
queue as it also has #first and #shift. You can wrap this functionality
in a Queue and Stack classes to make it more explicit if you like.

Included in the Ruby standard library:

irb(main):001:0> require 'thread'
=> true
irb(main):002:0> q = Queue.new
=> #<Queue:0xb7d753e0>
irb(main):003:0> q.push "abc"
=> #<Queue:0xb7d753e0>
irb(main):004:0> q.pop
=> "abc"

This queue object is thread-safe. There is also SizedQueue, which blocks
pushes when the queue reaches a certain size, until another element has
been popped.
 
R

Robert Klemme

Array can act as a stack as it has #pop and #last.

It even has #push.
It can also act as a queue as it also has #first and #shift.

You can use #push and #shift or #unshift and #pop for queue behavior.
Plus there is Queue as Brian mentioned.

Cheers

robert
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
474,197
Messages
2,571,040
Members
47,634
Latest member
RonnyBoelk

Latest Threads

Top