1

ランダムに生成したデータのさまざまなノードを含むXMLファイルがあります。私がやりたいのは、各ノードを実行し、そこからツリーを作成することです。私のカスタマイズされたソフトウェアは、XMLデータを使用して、これらのノードとそれらの接続を視覚的に描画します。

どのノードがどのノードに接続するかについての基準はありません。500ノードの場合、幅と深さがかなり複雑なツリーを生成する機能が必要です。

JgraphXを使用して図を描画するカスタマイズされたライブラリを使用してPythonでこれをコーディングしているので、正確なコードを表示する意味はありません。しかし、私が次の3つの機能を持っていると仮定します。

getXY_coord(a), get the XY coord of the node on the diagram
connectNodes(a,b), connects node a with b
getAllNodes(), returns list of all nodes on diagram

この複雑なツリーを作成するにはどうすればよいですか?視覚的に整理する必要はありません。接続自体が複雑である限り、ノードは図の反対側にある別のノードに接続できます。

私がやってのけることができた唯一のことは、ノードのリストをランダム化し、リスト内で隣接するノードを接続することでした。しかし、これでは私が望むものが得られません。

4

1 に答える 1

1

Prim's algorithm のような最小スパニング ツリー アルゴリズムを検討することをお勧めします。

networkxモジュールがこれを行います。ドキュメントを参照しください。

于 2012-07-16T19:26:38.910 に答える