On 25/11/05, Mickael Faivre-Macon <faivrem / gmail.com> wrote:
> Hi Brian,
>
> > The question should be what you want to do with your tree. You should
> > pick a datastructure suitable for your problem, there is no tree per
> > se. It depends on which pointers you need and which structure your
> > tree should have.
>
> My question was simple, the concept of tree is simple too, I don't
> want to over complicate the problem. I must assume that there is no
> generic tree implementation in Ruby avalaible right now. Okay.
>
> > If you just want nodes with children try this "reference implementation"
> >
> > ---
> > class Node
> >   attr_reader :children
> >
> >   def initialize
> >     @children = []
> >   end
> > end
> > ---
> >
> > which may or may not suit your needs.
>
> Sure, this is a good start. I can start by using this.
> I was wondering if I had to reinvent the wheel or not.
> I guess I have to.
>
> Mickael.
>
>

What I wanted to say, was that most probably you do not have to
reinvent the wheel if you are more specific about your application.
What do you want to achieve: Find elements in a set fast, Have a
datastructure where you can access and delete the smallest element in 
a fast way, build an index into a sorted array that allows for fast
range searches, draw a natural tree with real leaves onto the computer
monitor, structure a decision diagram, index a text, ....

Depending on what you want to achieve a specialized datastructure is
usefull, but there is no datastructure that can do all things equally
well.

hope to help,

Brian

--
http://ruby.brian-schroeder.de/

Stringed instrument chords: http://chordlist.brian-schroeder.de/