質問

次のグラフをナビゲートするための優れたアルゴリズムを考え出そうとして、少し苦労しています。

代替テキストhttp://www.archimedesinc.biz/images/StackOverflow/Tree .jpg

ユーザーが「表21」を選択した場合、出発点として、その開始テーブルから他のテーブルへのパスを取得できる必要があります。

EX:ユーザーが「表21」を選択した場合、最初に「表8」から値を追加し、次のパスを作成する必要があります" 表21 -> 表12 -> 表9 -> 表6 -> 表8 &quot ;、表間の重みはすべて同じです。

有向グラフを扱うスキルを忘れてしまったようで、良いアルゴリズムを考えることができません。私は解決策を求めているのではなく、ただ正しい方向に押しているだけです。

ありがとう!

役に立ちましたか?

解決

幅優先検索では、最短パスが見つかります: http://en.wikipedia.org / wiki / Breadth-first_search

他のヒント

エッジはすべて同じ重量であると言ったので、 Dijkstraのアルゴリズム(私のこの種の通常の最初の選択)は、幅優先検索に低下します。簡単にするためにそれを使用することをお勧めします。

最短経路を決定するための多くのアルゴリズムから選択できます。 QuickGraph は、このようなことを上手くこなします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top