累積距離、パスごとの距離、および頂点の名前 (または位置) を追跡することは理解できますが、目的地にどれだけ効率的に到達したかを追跡したい場合を除き、歩数を追跡する必要はありません。 ?
このステップは、パスを見つけるためにまったく不要であり、とにかく恣意的なようです。たとえば、累積距離が同じで最小数の複数の頂点がある場合、どの頂点から開始するかを気にする理由はありませんが、次のステップでラベル付けされる頂点はどれでもかまいません。
私は多くのコードを目にしますが、それらは通常、ステップを追跡するというこの原則に従っています。特に、それらの多くが移動コストが 1 または無限の 2D マトリックスで経路探索を行っている場合は、非常に奇妙に思えます。その場合、頂点ごとのステップ数が不必要であるだけでなく、気にする必要がある唯一の情報は、距離と頂点のラベルであると私には思えます。距離がある場合は、頂点を訪れたことがわかります。すべての距離が同じであるため、最初に頂点に到達するときは常にその頂点の最短距離になるはずです。低いか高いかを評価する必要はなく、存在することだけが必要です。
とにかく、なぜそんなに単純なものに余分な情報が集められなければならないのか、私はただ興味があります. 私が把握していないだけの理由はありますか?
編集 -
少し明確にするために、コメントで適切にフォーマットされていなかったため、通常、ステップは人々が使用するように指示する表に示されています.
____________________
|name|step|distance|
--------------------
|temporary Labels |
--------------------
ステップは、位置が原点から次に短いポイントである場合に追加されます。