2011-11-19 16 views
6

ルビーで使用するツリーデータ構造を見つけるのに苦労しています。私が調べることができる有名なものはありますか?私の要件は簡単です。私は木を作成したい(またはそれはグラフかもしれない)と、いくつかのノード間の距離を探したい。例えば、私は次のようルビのツリーとグラフのデータ構造

 A 
/ \ 
    B-----C 
/\  \ 
D E  F 

のようなツリー/グラフを持っているかもしれない私は、ルートノード(A)と他のすべてのノード間の距離を見つけることができるようにしたいです。 (A、B、C)を経由して(C)に到達することはできますが、長さは(A、B、C) (A、C)からの直接経路が存在するため、1になります。

これはルビーで使用できるツリー/グラフの宝石はありますか?

答えて

2

gratr gemとそのdocumentationをご覧ください。さまざまな種類のグラフを表現するためのクラスと、頂点間の距離を求めるための基本的なアルゴリズムを提供します(Distanceモジュールを参照)。

関連する問題