2011-08-28 16 views
7

Yeni Ruby programcıyım. C++'dayken veri yapılarını işaretçi ile uygulayabilirim ancak şimdi Ruby'de bu veri yapılarını nasıl uygulayabilirim bilmiyorum (örneğin ağaç). Birisi bana yardımcı olabilir (örneğin, bana iyi bir referans veya iyi bir örnek olsun). Özel teşekkürler.Uygulama Ağacı ve ruby ​​ile diğer veri yapısı

+0

ActiveRecord nesnelerini ilişkilendirmek ister misiniz, yoksa yalnızca Ruby odaklı mıdır? – apneadiving

+0

Özür dileriz, ActiveRecoed gibi yorumunuzdaki ifadelerden anlamıyorum. daha açık bir şekilde açıklayabilir misin? –

+0

ActiveRecord, Rails 'Orm – apneadiving

cevap

10

Ruby'nin çoğu şeyin yalnızca referans olarak geçtiği için işaretçiler gerekmez. Gelen

> a = "hello" 
> b = a 
> a.object_id == b.object_id 
=> true 

En basit sadece bir ebeveyn ile yapı ve sol ve sağ kardeş olabilecek bir ağaç düğümü oluşturur: örneğin bakmak olabilir daha tam uygulamalar için

> Node = Struct.new(:parent, :left, :right) 
> root = Node.new 
> n1 = Node.new(root, "hello", "world") 
> root.left = n1 
... 

> root.left.left 
=> "hello" 
> root.left.right 
=> "world" 

:

RubyTree:
http://rubytree.rubyforge.org/rdoc/

SimpleTree:
https://github.com/ealdent/simple-tree/blob/master/lib/simple_tree.rb