BGL - Graphkonzept
-
Hallo,
welches Graphkonzept ist bei folgenden Anforderungen am sinnvollsten?
- Index/Position eines Knotens soll informell die Benennung des Knotens sein, ohne dass diese zusätzlich abgespeichert wird (kein mapping oder dergleichen)
- Löschen von Knoten während Iterieren durch die Knotenmenge, so dass inzidente Kanten automatisch gelöscht werden (vecS scheidet z.B. aus -> listS)
- Vornehmlich das Iterieren und Löschen soll performant sein
- das Bestimmen von vom Grad eines Knotens soll beim Iterieren in konstanter Zeit möglich sein
- der (informelle) Bezeichner - sprich Index oder dergleichen - darf sich nach Löschen eines Knotens nicht ändern (es werden allerdings keine Knoten eingefügt)Vielen Dank im Voraus!
-
Und wie würde ich
einen Graphen des Konzepts (class Vertex beinhaltet z.B. den Knotennamen)
boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, Vertex>
in einen äquivalenten Graphen transformieren (über copy lösbar?)