0

2つのノードの最短経路ツリー間の相違点を見つけようとしています。

エッジ、エッジウェイトを持つ5つのノードのサンプル無向グラフ:

(4 1)2(1 2)3(3 2)4(1 3)8(4 3)5(2 4)1(5 4)6(1 5)4(2 5)7

ノード名/ラベルは次のとおりです。ラベル:ノード1:sノード2:uノード3:xノード4:vノード5:y

ノード1と2の最短経路を計算しました。

ノード1の最短パスは次のとおりです。{[1]、[1 2]、[1 3]、[1 2 4]、[1 5]}ノード2の最短パスは次のとおりです:{[1]、[2] 、[2 4 3]、[2 4]、[2 5]}

最短経路を頂点ラベルT=[tk]、k = 1..Nのベクトルとして表すことができるとすると、tkは頂点kの親のラベルであり、ルートを示す記号0が付いています。相違点、つまり、T1とT2の対応するラベルが一致しない場所の数を見つける必要があります。

誰かがこれで私を助けることができますか?

頂点ラベルのベクトルとしてのTの表現について混乱しています。

ありがとうございました。

4

1 に答える 1

0

ベクトルTは、各ノードの親ラベルを含むベクトルです。サンプルの場合、T1は[0,0,0,2,0]のようになります。これは、4に到達するには、ノード2へのパスをたどってから、4へのリンクを取得する必要があることを示しています。

これは、パスを表すかなり簡単な方法です。両方のベクトル間の違いを見つける必要がある場合は、要素ごとに比較するか、両方のベクトル間でxorを実行できます。その違いを理解すると、親が異なるノードに違いが見られます。

于 2012-10-29T16:43:21.640 に答える