<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[erster Einstieg in boost::graph]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich sitze gerade über dem Buch &quot;The Boost Graph Library&quot; und verstehe nur Bahnhof.</p>
<p>Dabei brauche ich im Prinzip nur einen ganz billigen Baum. Jede Kante und jeder Knoten kommen nur einmal vor und Schleifen sind verboten. Z.B.:</p>
<pre><code>f
   / 
  c
 / \
a   e
 \ 
  b
   \
    d
</code></pre>
<p>Was ist bei boost::graph zu tun das ich eine Klasse a in meinen Graphen g nach obigen Bedingungen bekomme?</p>
<p>Gruß, Goran</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/229503/erster-einstieg-in-boost-graph</link><generator>RSS for Node</generator><lastBuildDate>Sun, 27 Sep 2026 20:15:36 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/229503.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 12 Dec 2008 17:51:12 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to erster Einstieg in boost::graph on Fri, 12 Dec 2008 17:51:45 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich sitze gerade über dem Buch &quot;The Boost Graph Library&quot; und verstehe nur Bahnhof.</p>
<p>Dabei brauche ich im Prinzip nur einen ganz billigen Baum. Jede Kante und jeder Knoten kommen nur einmal vor und Schleifen sind verboten. Z.B.:</p>
<pre><code>f
   / 
  c
 / \
a   e
 \ 
  b
   \
    d
</code></pre>
<p>Was ist bei boost::graph zu tun das ich eine Klasse a in meinen Graphen g nach obigen Bedingungen bekomme?</p>
<p>Gruß, Goran</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1629608</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1629608</guid><dc:creator><![CDATA[goran]]></dc:creator><pubDate>Fri, 12 Dec 2008 17:51:45 GMT</pubDate></item><item><title><![CDATA[Reply to erster Einstieg in boost::graph on Fri, 12 Dec 2008 18:34:22 GMT]]></title><description><![CDATA[<p>Helfen dir die Tutorials nicht weiter?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1629627</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1629627</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Fri, 12 Dec 2008 18:34:22 GMT</pubDate></item><item><title><![CDATA[Reply to erster Einstieg in boost::graph on Fri, 12 Dec 2008 18:43:45 GMT]]></title><description><![CDATA[<p>kein Stück <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1629641</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1629641</guid><dc:creator><![CDATA[goran]]></dc:creator><pubDate>Fri, 12 Dec 2008 18:43:45 GMT</pubDate></item><item><title><![CDATA[Reply to erster Einstieg in boost::graph on Fri, 12 Dec 2008 20:15:42 GMT]]></title><description><![CDATA[<p>Wenn man das Beispiel aus der <a href="http://www.boost.org/doc/libs/1_37_0/libs/graph/doc/quick_tour.html" rel="nofollow">&quot;Quick-Tour&quot;</a> umwandelt, müsste das nicht deinen Baum ergeben?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;                  // for std::cout
#include &lt;utility&gt;                   // for std::pair
#include &lt;algorithm&gt;                 // for std::for_each
#include &lt;boost/graph/graph_traits.hpp&gt;
#include &lt;boost/graph/adjacency_list.hpp&gt;
#include &lt;boost/graph/dijkstra_shortest_paths.hpp&gt;

using namespace boost;

int main(int,char*[])
{
    // create a typedef for the Graph type
    typedef adjacency_list&lt;vecS, vecS, bidirectionalS&gt; Graph;

    // Make convenient labels for the vertices
    enum { A, B, C, D, E, N };
    const int num_vertices = N;
    const char* name = &quot;ABCDE&quot;;

    // writing out the edges in the graph
    typedef std::pair&lt;int, int&gt; Edge;
    Edge edge_array[] = { Edge(A,B), Edge(B,D), Edge(A,C), Edge(C,E), Edge(C,F) };
    const int num_edges = sizeof(edge_array)/sizeof(edge_array[0]);

    // declare a graph object
    Graph g(num_vertices);

    // add the edges to the graph object
    for (int i = 0; i &lt; num_edges; ++i)
      add_edge(edge_array[i].first, edge_array[i].second, g);

    return 0;
}
</code></pre>
<p>Ist auch schon lange her, dass ich das letzte mal was mit boost.graph gemacht hab und fande die Bibliothek auch ziemlich unintuitiv.</p>
<p>Und soweit ich weiß gibt man bei den Graphen hier immer nur die Kanten an, die Menge der Knoten ergibt sich dann halt aus den Kanten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1629689</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1629689</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Fri, 12 Dec 2008 20:15:42 GMT</pubDate></item></channel></rss>