0

このような無向グラフを表現したい:

http://cnx.org/content/m29399/latest/Picture%202.png

xml ファイルに。どのように始めればよいかよくわかりません。

編集: xml 形式のデータが必要なため、xml を使用してグラフを再構築できます。

前もって感謝します

4

4 に答える 4

1

私見では、車輪の再発明を試みるべきではありません。既存のXMLベースのグラフ形式の1つであるGraphMLXGMML、またはGXLを使用するだけです。GraphMLから始めるのが最も簡単なようです。

于 2013-01-09T10:49:37.130 に答える
0

グラフは頂点と辺で構成されます。したがって、最上位の XML 記述は次のようになります。

<graph>
    <vertices>...</vertices>
    <edges>...</edges>
</graph>

<vertices>コンテナーには、<vertex>各頂点の情報を運ぶ要素があります。特に、エッジが頂点を参照できる一意の識別子が必要になります。だから、このようなもの

    <vertices>
        <vertex id="A">other information, if needed</vertex>
        <vertex id="B">...</vertex>
        ...
    </vertices>

<edge>コンテナ内のそれぞれには<edges>、少なくとも 3 つの情報が必要です。接続された頂点とエッジの重みです。したがって、たとえば

    <edges>
        <edge ends="A B">7</edge>
        <edge ends="B C">8</edge>
        ...
    </edges> 

これらすべてをスキーマに入れることができます。たとえば、「ends」属性がグラフに存在する頂点の ID への参照を保持するという要件を適用できます (つまり、xs:ID および xs:IDREF を検索します)。 XML スキーマのドキュメントを参照してください)。

于 2013-01-08T17:21:24.223 に答える
0

私は物事を試し続けましたが、これはうまくいっているようです:

   <Nodes>
       <Node>
           <Name>A</Name>
       </Node> 
       <Node>
           <Name>B</Name>
       </Node> 
        ....
   </Nodes>

   <Routes>
       <Route>
          <from>A</from>
          <to>B</to>
          <cost>7</cost>
        </Route>
        ....
   </Routes>

おそらく最善の方法ではありませんが、これは私にとってはうまくいきます:)enter code here

于 2013-01-09T10:44:51.357 に答える
0

グラフィックを xml に変換する必要がありますか、それとも何らかの形式のデータが既にありますか?

1 つ目は難しく、2 つ目はBoost::Graphを見ることができます。

于 2013-01-08T14:27:39.440 に答える