あなたは、ダイクストラ(単一の開始ノードからの最短経路)とプリム(特定のノードから開始する最小重みスパニングツリー)の2つのアルゴリズムが非常によく似た構造を持っていることは正しいです。どちらも貪欲で(現在の観点から最高のエッジを取ります)、グラフにまたがるツリーを構築します。
ただし、最小化する値は異なります。ダイクストラは、次のエッジとして、ツリーから開始ノードに最も近いまだ選択されていないノードにつながるエッジを選択します。(この選択により、距離が再計算されます。)プリムは、これまでに構築されたツリーからリードする最短のエッジをエッジとして選択しました。そのため、両方のアルゴリズムが「最小エッジ」を選択しました。主な違いは、最小に選択された値です。ダイクストラの場合は、開始ノードから候補ノードまでの完全なパスの長さであり、プリムの場合は、その単一エッジの重みです。
違いを確認するには、何が起こるかを確認するためにいくつかの例を構築する必要があります。それは本当に有益です。異なる動作を示す最も単純な例は、長さ2のエッジおよび を持つ三角形であり、 長さは1です。ダイクストラは および (長さ2の2つのパスを与える)を選択し、プリムは および(のスパニングツリーを与える重量3)。x,y,z{x,y}{x,z}{y,z}x{x,y}{x,z}{x,y}{y,z}
クラスカル、それはわずかに異なっています。最小スパニングツリーを解決しますが、実行中にツリーを形成しない可能性のあるエッジを選択し、サイクルを回避します。そのため、部分的なソリューションが切断される場合があります。最後に、ツリーを取得します。