1

レモングラフライブラリ(レモンのダイクストラのhttp://lemon.cs.elte.hu/pub/tutorial/a00009.html )からダイクストラのアルゴリズムを実行するために必要なパラメータのいくつかについて質問があります。アルゴリズムを実行するには、グラフがどこにあるか、開始ノードがどこにあるか、宛先ノードがdijkstra(g, length).distMap(dist).run(s,t);どこにあるかなどを記述します。私の質問は、とは何であり、それらはどのように使用されるかです。ありがとう!gstlengthdist

4

1 に答える 1

1

私の読み方では、両方ともマップである必要があり、1つはエッジの長さ(入力)、1つは頂点の距離(出力)、

また、lgf_demo.ccとdijkstra_test.ccを確認し、注意してください

Dijkstra&distMap(DistMap&m)[インライン]

アルゴリズムによって計算されたノードの距離を格納するマップを設定します。run()またはinit()を呼び出す前にこの関数を使用しない場合、インスタンスは自動的に割り当てられます。もちろん、デストラクタはこの自動的に割り当てられたマップの割り当てを解除します。

戻り値:(* this)


const DistMap&distMap()const[インライン]

アルゴリズムによって計算されたノードの距離を格納するノードマップへのconst参照を返します。

前提条件:この関数を使用する前に、run()またはinit()のいずれかを呼び出す必要があります。

これがDijstraの出力です。

于 2012-12-12T11:25:58.167 に答える