2017-05-11 3 views
0

の高さを計算し、私は私が最小スパニングツリーの高さを見つけることができJAVAコードが必要です。 基本的に私は、MSTの高さを与えるだけでなく、その高さを与えるだけでなく、 プリムさん/クラスカルのアルゴの延長を探してい。は最小spannningツリー

ありがとうございます。

+2

しかし、プリム法の出力が木です。あなたは木の高さを計算できませんか? –

+1

さらに、構築されたツリーには「固有の」ルートがあります。したがって、「高さ」は意味をなさない。毎回異なる樹高(異なる高さ)を生成するランダム化されたプリムのアルゴリズムを持つことができます。 –

+0

この質問は、StackOverflowよりもコンピュータサイエンス(https://cs.stackexchange.com/)に適しています。そこに質問を移動することを検討してください。 – Siegmeyer

答えて

0

私はあなたにヒントを与えて、ここにコードを書いていないです。
すべてのノードで、そのノードの高さ/深さを格納する変数を保持します。

ので、開始ノードのための深さは、今すぐ0 になりますあなたはMSTにエッジを追加するたびに、1により、新しいノードの深さを増します。


現在、次の深さの検出ノードがあります。
C 1
B 1


は今、あなたはDCからエッジを追加したいとし、そのノードの深さは、Dは(深さになりますc)+1、すなわち1 + 1 = 2である。

また、アルゴリズムの各ステップですべてのノード間で最大の深さのトラックを保持することができます。
最後に、答えはツリーのすべてのノードの中で最大の深さになります。

+0

助けてくれてありがとう – Nida

+0

@Nida uはそれが有用であれば正しいとマークすることができます –

関連する問題