Grundlagen

Einfache Graphen und Multigraphen erklärt

Zwei Erweiterungen trennen sie: eine Kante von einem Knoten zu sich selbst und eine zweite Kante zwischen demselben Paar. Dieser Leitfaden zeigt, was jede davon ändert, welche Standardschranken unbemerkt nicht mehr gelten, warum das Gründungsproblem des Fachs kein einfacher Graph sein kann und wann das Zusammenfassen von Duplikaten gefahrlos ist.

16 Min Lesezeit Aktualisiert: September 2026 Anfänger
Mohammed Islam Hadjoudj
Mohammed Islam Hadjoudj
Expert Operations Research Engineer

1. Drei Definitionen, zwei Erweiterungen

Zwei Dinge kann eine Menge ungeordneter Paare nicht ausdrücken: eine Kante, die einen Knoten mit sich selbst verbindet, und zwei verschiedene Kanten, die dasselbe Paar verbinden. Ob man sie zulässt, ergibt drei verschiedene Objekte, und die Namen sollte man genau nehmen, weil Sätze immer über bestimmte dieser Objekte formuliert werden.

Der einfache Graph ist in der meisten Literatur der Standard, und seine Definition ist die aus dem Leitfaden zu Knoten und Kanten:

G = (V, E)      mit   E ⊆ [V]²      jede Kante ist eine 2-elementige Teilmenge von V

Da E eine Menge 2-elementiger Teilmengen ist, ist {v, v} nicht zulässig (es hat nur ein Element), und dasselbe Paar kann nicht zweimal vorkommen (eine Menge enthält jedes Element nur einmal). Beide Einschränkungen sind Folgen der Notation, nicht Entscheidungen, die jemand getroffen hat.

Um sie aufzuheben, braucht man einen anderen Formalismus. Bondy und Murtys Graph Theory gibt Kanten eine eigene Identität und fügt eine Funktion hinzu, die angibt, welches Paar jede Kante verbindet:

G = (V, E, ψ)      mit   ψ: E → ungeordnete Paare von (nicht notwendig verschiedenen) Knoten

Nun können e1 und e2 verschiedene Elemente von E sein mit ψ(e1) = ψ(e2) = {u, v}, was ein Paar paralleler Kanten ergibt, und ψ(e) = {v, v} ist eine Schleife. Diestel gelangt mit zwei Abbildungen, die jeder Kante ihre Enden zuordnen, an dieselbe Stelle, und West mit einer Relation, die jeder Kante ihre Endpunkte zuordnet. Der Formalismus unterscheidet sich, der Inhalt nicht.

ObjektSchleifenParallele KantenBenötigt
Einfacher GraphNeinNeinE ⊆ [V]²
MultigraphMeist neinJaEine Inzidenzfunktion
PseudographJaJaEine Inzidenzfunktion
Drei Felder mit denselben vier Knoten. Das erste zeigt einen einfachen Graphen mit vier einzelnen Kanten und ohne Schleifen. Das zweite zeigt einen Multigraphen mit einer doppelten Kante zwischen zwei Knoten, beschriftet mit dem Hinweis, dass er eine Inzidenzfunktion braucht. Das dritte zeigt einen Pseudographen, der zusätzlich eine Schleife an einem Knoten hat, mit dem Hinweis, dass die Schleife zwei zum Grad dieses Knotens beiträgt.
Dieselben vier Knoten unter den drei Definitionen. Jeder Schritt nach rechts bringt eine Erweiterung und kostet Formalismus.

Zwei Warnungen zum Vokabular selbst, weil es beim Lesen von Fachartikeln echte Verwirrung stiftet:

2. Die Graphentheorie wurde auf einem Multigraphen gegründet

Das ist kein Randfall, der nachträglich angeschraubt wurde. Das Problem, mit dem das Fach begann, ist ein Multigraph, und es ist nicht mehr dasselbe Problem, wenn man es vereinfacht.

Eulers Arbeit von 1736 über die Brücken von Königsberg modelliert vier Landmassen, die durch sieben Brücken verbunden sind. Zwei Brücken verbinden das Nordufer mit der Insel, zwei weitere das Südufer mit der Insel. Das sind parallele Kanten, und kein einfacher Graph kann sie aufnehmen.

Zwei Felder. Links der Königsberger Multigraph: vier Knoten, Nordufer, Insel, Südufer und östliche Insel, verbunden durch sieben Kanten einschließlich zweier paralleler Paare, mit den Graden 3, 5, 3 und 3, alle vier ungerade, und dem Urteil, dass kein Eulerweg existiert. Rechts dieselbe Struktur, in der die parallelen Kanten zu einzelnen Kanten zusammengefasst sind, mit fünf Kanten und den Graden 2, 3, 2 und 3, von denen nur zwei ungerade sind, und dem Urteil, dass ein Eulerweg existiert. Eine Bildunterschrift hält fest, dass das Vereinfachen des Multigraphen die Antwort auf die Gründungsfrage der Graphentheorie ändert.
Links die echten Brücken: vier Landmassen mit ungeradem Grad, also überquert kein Spaziergang jede Brücke genau einmal. Rechts dieselbe Karte mit zusammengelegten parallelen Brücken: nur zwei ungerade Knoten, und der Spaziergang wird möglich.

Eulers Kriterium betrifft die Parität der Grade, und die parallelen Brücken sind es, die die Grade dorthin bringen, wo sie sind:

Königsberger Multigraph        7 Kanten    Grade 3, 5, 3, 3    vier ungerade  → kein Eulerweg
Zugehöriger einfacher Graph    5 Kanten    Grade 2, 3, 2, 3    zwei ungerade  → ein Eulerweg existiert

Löschen Sie die Duplikate, und die Antwort kippt. Die Vielfachheit ist keine Dekoration am Modell, sie ist das Modell, und das historische Detail in der Geschichte der Graphentheorie ist untrennbar mit dem Formalismus verbunden. Wer die sieben Brücken in eine Datenstruktur lädt, die Kanten stillschweigend dedupliziert, wird zu dem Schluss kommen, Euler habe sich geirrt.

3. Was eine Schleife mit dem Grad macht

Der Grad zählt Kantenenden , die an einem Knoten zusammentreffen, nicht Kanten. Eine Schleife hat zwei Enden, und beide landen am selben Knoten, also gilt:

Eine Schleife an v trägt 2 zu deg(v) bei. Parallele Kanten tragen jeweils 1 bei, genau wie getrennte Kanten.

Diese Konvention ist erzwungen, nicht gewählt. Das Handschlaglemma zählt die Paare (Knoten, Kantenende daran) auf zwei Arten, und jede Kante, auch eine Schleife, hat genau zwei Enden, also gilt ∑ deg(v) = 2m für Pseudographen unverändert. Gibt man einer Schleife den Grad 1, bricht der älteste Satz des Fachs sofort.

Einige Folgerungen, die man im Kopf haben sollte:

4. Was Vielfachheit ändert und was nicht

Die nützliche Frage ist nicht „Ist mein Graph einfach?“, sondern „Hängt die Eigenschaft, die ich berechne, von der Vielfachheit ab?“. Die Antworten teilen sich klar auf, und die Aufteilung ist nicht offensichtlich.

Zwei Knoten u und v, links durch eine einzelne Kante und rechts durch zwei parallele Kanten verbunden. Eine Tabelle darunter vergleicht sie: Beide sind zusammenhängend, beide bipartit, beide haben die chromatische Zahl 2, aber der minimale Schnitt steigt von 1 auf 2, die Anzahl der Spannbäume steigt von 1 auf 2, und die Taillenweite fällt von unendlich auf 2.
Das kleinstmögliche Experiment. Das Verdoppeln einer Kante lässt Zusammenhang und Färbung unberührt und ändert den minimalen Schnitt, die Anzahl der Spannbäume und die Taillenweite.
EigenschaftParallele KantenSchleifenWarum
Zusammenhang, KomponentenKein EffektKein EffektErreichbarkeit braucht nur eine Kante zwischen einem Paar
PlanaritätKein EffektKein EffektEin Multigraph ist genau dann planar, wenn sein zugrunde liegender einfacher Graph es ist
BipartitheitKein EffektZerstört sieEine Schleife ist ein ungerader geschlossener Kantenzug der Länge 1
Echte KnotenfärbungKein EffektMacht sie unmöglichParallele Kanten stellen dieselbe Bedingung zweimal; eine Schleife verlangt, dass ein Knoten sich von sich selbst unterscheidet
Grad, HandschlagZählt je 1Zählt 2Kantenenden, nicht Kanten
Taillenweite (kürzester Kreis)Fällt auf 2Fällt auf 1Zwei parallele Kanten bilden einen Kreis der Länge 2
Kantenzusammenhang, minimaler SchnittÄndert sichKein EffektJede parallele Kopie muss mitgeschnitten werden
Anzahl der SpannbäumeÄndert sichKein EffektJede parallele Kopie ergibt einen eigenen Baum
Maximaler FlussÄndert sichKein EffektParallele Kapazitäten addieren sich
Eulerweg oder EulerkreisÄndert sichErhöht einen Grad um 2Die Parität der Grade ist das ganze Kriterium

Drei dieser Zeilen verdienen eine ausführliche Begründung.

Färbung ignoriert parallele Kanten, scheitert aber an Schleifen. Eine echte Färbung verlangt, dass die Enden jeder Kante verschiedene Farben erhalten. Eine zweite Kopie von {u, v} wiederholt eine Bedingung, die schon da ist, also sind die Menge der echten Färbungen und damit die chromatische Zahl und das chromatische Polynom genau die des zugrunde liegenden einfachen Graphen. Eine Schleife verlangt c(v) ≠ c(v), was nichts erfüllt, also hat ein Pseudograph mit einer Schleife überhaupt keine echte Färbung, und sein chromatisches Polynom ist identisch null. Deshalb wird die Graphenfärbung fast immer für schleifenlose Graphen formuliert.

Die Anzahl der Spannbäume hängt von der Vielfachheit ab. Zwei Knoten, die durch eine einzelne Kante verbunden sind, haben einen Spannbaum; verbunden durch zwei parallele Kanten haben sie zwei, weil die Wahl jeder Kante einen anderen Baum ergibt. Kirchhoffs Matrix-Baum-Satz von 1847 zählt sie aus der Laplace-Matrix, und er ist genau deshalb für Multigraphen formuliert, weil die Vielfachheiten als Anzahlen außerhalb der Diagonale in die Matrix eingehen. Elektrische Netzwerke, bei denen Kirchhoff auf das Problem stieß, haben regelmäßig parallel geschaltete Bauteile.

Schnitte und Flüsse hängen von der Vielfachheit ab. Die minimale Anzahl von Kanten, deren Entfernen u von v trennt, ist 1, wenn eine einzelne Kante sie verbindet, und 2, wenn es zwei sind. Da maximaler Fluss gleich minimalem Schnitt gilt, gilt dasselbe für den Fluss: k parallele Kanten mit Einheitskapazität transportieren k Einheiten. Genau deshalb ist ein Multigraph mit Einheitskapazitäten das natürliche ungewichtete Modell eines Flussnetzwerks.

5. Jede Schranke für einfache Graphen verliert ihre Gültigkeit

Ein großer Teil der Standardresultate trägt eine unausgesprochene Einfachheitsannahme, und ohne sie werden sie nicht allmählich schlechter. Sie scheitern komplett.

StandardresultatEinfacher GraphMultigraph
Maximale Kantenzahlm ≤ n(n-1)/2Unbeschränkt: Parallele Kopien dürfen sich beliebig wiederholen
Einteilung in dünn oder dichtm = O(n) vs. Θ(n²)Bedeutungslos ohne Schranke für die Vielfachheit
Adjazenzmatrix ist 0/1JaNein: Die Einträge sind Anzahlen
Grad gleich Größe der Nachbarschaftdeg(v) = |N(v)|Gilt nicht; der Grad kann die Anzahl der Nachbarn übersteigen
Eulersche Formel für planare Graphenn - m + f = 2Gilt weiterhin, da sie Flächen zählt und keine Einfachheit braucht
Kantenschranke für planare Graphenm ≤ 3n - 6 für n ≥ 3Gilt nicht: Parallele Kanten begrenzen Flächen der Länge 2
Handschlaglemma∑ deg(v) = 2mGilt weiterhin, wobei Schleifen doppelt zählen

Die beiden Zeilen, die überleben, verdienen ebenso Beachtung wie die, die scheitern. Das Handschlaglemma und Eulers Polyederformel werden beide durch Zählen von Inzidenzen bewiesen, und Zählargumente kümmert es nicht, ob zwei Kanten zufällig dasselbe Paar verbinden. Die Schranken, die scheitern, sind die, die durch Wahl verschiedener Knotenpaare bewiesen werden, und genau diesen Schritt macht ein Multigraph ungültig.

Die praktische Fassung dieses Abschnitts: Wenn Sie eine Schranke nachschlagen, prüfen Sie, ob ihr Beweis Inzidenzen oder Paare zählt. Die erste Art überträgt sich auf Multigraphen, die zweite nicht.

6. Speicherung: wo die Adjazenzmatrix an ihre Grenzen stößt

Die drei Standarddarstellungen verschlechtern sich sehr unterschiedlich, und die Unterschiede entscheiden, welche man verwendet.

Die Adjazenzmatrix ist keine 0/1-Matrix mehr. Die natürliche Erweiterung speichert die Anzahl der Kanten zwischen jedem Paar, der Eintrag (u, v) wird also zu einer Anzahl, und eine Schleife setzt nach Konvention 2 auf die Diagonale, damit die Zeilensummen weiterhin die Grade liefern. Das funktioniert, hat aber eine fatale Einschränkung für echte Daten: Eine Anzahl kann keine Information pro Kante tragen. Wenn Ihre drei parallelen Flüge jeweils einen anderen Preis haben, hat eine Matrix aus Anzahlen keinen Platz dafür.

einfach        A[u][v] ∈ {0, 1}
Multigraph     A[u][v] = Anzahl der Kanten zwischen u und v
Pseudograph    A[v][v] = 2 × (Anzahl der Schleifen an v)      damit Zeilensummen Grade sind

Die Adjazenzliste behält Duplikate. Die Liste von u enthält v einfach so oft, wie es Kanten zwischen ihnen gibt. Der Durchlaufcode bleibt unverändert, und BFS oder DFS betrachten denselben Nachbarn mehrmals, was harmlos ist, solange die Besucht-Prüfung auf Knoten erfolgt.

Die Kantenliste wird zum natürlichen Format. Das ist die Darstellung, die wirklich zur Mathematik passt: Jede Kante ist ein Datensatz mit eigener Identität, parallele Kanten sind also einfach verschiedene Datensätze, und Attribute pro Kante haben einen Platz. Das ist die Definition über die Inzidenzfunktion aus Abschnitt 1 , als Datenstruktur ausgedrückt.

Daraus folgt ein Entwurfsgrundsatz, und er ist das Nützlichste, was man aus diesem Abschnitt mitnehmen kann:

In einem Multigraphen brauchen Kanten Identitäten. Ein Paar von Endpunkten identifiziert keine Kante mehr, also muss alles, was sich auf eine Kante bezieht, ob Matching, Spannbaum, Fluss oder Löschung, auf eine Kanten-ID verweisen und nicht auf (u, v).

Fast jeder Multigraph-Bug geht auf diesen einen Satz zurück. Wer einen Spannbaum als Menge von Knotenpaaren speichert oder eine Menge besuchter Kanten mit dem Schlüssel (u, v) führt, vermischt stillschweigend parallele Kanten und erhält Antworten, die auf eine Weise falsch sind, die kein Typprüfer bemerkt.

7. Welche Algorithmen das betrifft

Die meisten durchlaufartigen Algorithmen sind gegenüber der Vielfachheit gleichgültig, weil sie Knoten markieren. Diejenigen, die Kanten markieren oder auswählen, brauchen Aufmerksamkeit.

AlgorithmusAuf einem MultigraphenWorauf achten
BFS und DFSFunktionieren unverändertSie besuchen einen doppelten Nachbarn zweimal und überspringen ihn; die Besucht-Menge betrifft Knoten
DijkstraFunktioniert unverändertDie Relaxierung behält von mehreren parallelen Kanten ganz von selbst die billigste
Kruskal, PrimFunktionieren unverändertDer Kreistest verwirft die überflüssigen Kopien automatisch
Eulerweg oder EulerkreisBraucht den MultigraphenJede Kante muss einmal durchlaufen werden, parallele Kanten sind also getrennte Pflichten; markieren Sie Kanten-IDs, nicht Paare
Chinesisches PostbotenproblemBraucht den MultigraphenDie ganze Methode des Algorithmus besteht darin, Kanten zu verdoppeln, also absichtlich parallele Kopien zu erzeugen
Maximaler FlussFunktioniert, und die Vielfachheit zähltParallele Kapazitäten addieren sich; halten Sie sie getrennt oder summieren Sie sie ausdrücklich
Kargers minimaler SchnittErzeugt MultigraphenDas Kontrahieren einer Kante verschmilzt Knoten und erzeugt parallele Kanten; sie zu deduplizieren zerstört die Korrektheit
MatchingVorsicht gebotenParallele Kanten sind alternative Wahlmöglichkeiten für dasselbe Paar; Schleifen sind nie Teil eines Matchings
KnotenfärbungParallele Kanten ignorierenZuerst vereinfachen; eine Schleife bedeutet, dass keine Färbung existiert

Die Karger-Zeile überrascht viele, und sie verdient eine vollständige Erklärung, weil sie den üblichen Instinkt umkehrt. Kargers randomisierter Algorithmus für den minimalen Schnitt kontrahiert wiederholt eine gleichverteilt zufällig gewählte Kante und verschmilzt ihre beiden Endpunkte zu einem Knoten. Die Kontraktion macht aus zwei Kanten, die auf die beiden verschmolzenen Knoten zeigten, zwei parallele Kanten zum neuen Knoten, und die Wahrscheinlichkeitsanalyse des Algorithmus hängt davon ab, jede Kopie zu behalten, weil die Chance, eine Kante zu kontrahieren, proportional zur Anzahl ihrer Kopien ist. Vereinfacht man den Zwischengraphen, ist der Algorithmus nicht mehr korrekt. Dasselbe gilt für den Kontraktionsschritt in Borůvkas Spannbaum-Algorithmus.

8. Wann ein Multigraph nicht optional ist

Multigraphen sind keine Kuriosität, die man wegnormalisieren sollte. Sie sind das ehrliche Modell, wann immer zwei Objekte mehr als einmal in Beziehung stehen können und die einzelnen Beziehungen wichtig sind:

9. Vereinfachen und was es kostet

Einen Multigraphen in einen einfachen Graphen umzuwandeln ist oft der richtige Schritt, und es ist nur dann gefahrlos, wenn Sie wissen, welche der Eigenschaften aus Abschnitt 4 Sie gleich verändern. Es gibt drei Standardverfahren, und sie beantworten verschiedene Fragen:

VerfahrenBehältVerliertGeeignet für
Zusammenfassen paralleler Kanten zu einer, Schleifen entfernenZusammenhang, Planarität und die chromatische Zahl, wobei das Entfernen einer Schleife einen nicht färbbaren Graphen in einen färbbaren verwandeltSchnitte, Flüsse, Anzahl der Spannbäume, Euler-StrukturStrukturelle Fragen
Zusammenfassen und Gewichte summierenGesamtkapazität, also bleiben maximaler Fluss und minimaler Schnitt erhaltenAttribute einzelner KantenFluss- und Schnittprobleme
Zusammenfassen und das minimale Gewicht nehmenKürzeste-Wege-DistanzenDie Alternativen, also brechen Schnitte und FlüsseRouting

Beachten Sie, dass die zweite und die dritte Regel unvereinbar sind: Summieren ist für Kapazitäten richtig und für Distanzen falsch, das Minimum ist für Distanzen richtig und für Kapazitäten falsch. Welche gilt, hängt davon ab, wie sich Gewichte entlang eines Weges verknüpfen, und das ist das Thema des begleitenden Leitfadens zu gewichteten und ungewichteten Graphen. Wer das falsche Zusammenfassen wählt, beantwortet stillschweigend eine andere Frage, und der Graph sieht hinterher völlig vernünftig aus.

Eine vierte Möglichkeit ist oft besser als alle drei: Behalten Sie den Multigraphen und lassen Sie den Algorithmus damit umgehen. BFS, DFS, Dijkstra, Kruskal und Prim laufen alle unverändert korrekt auf Multigraphen, also bringt Vereinfachen oft nichts und kostet Information.

10. Gerichtete Multigraphen

Alles oben Gesagte überträgt sich auf gerichtete Graphen, mit einer zusätzlichen Unterscheidung, die man benennen sollte. In einem Digraphen sind die Bögen (u, v) und (v, u) bereits verschiedene Objekte, und das ist keine Vielfachheit, sondern Richtung: Dieses Paar ist ein Digon, und ein gewöhnlicher Digraph darf ohne Erweiterung seiner Definition eines enthalten. Viele Digraphen enthalten gar keins: Ein DAG nie. Vielfachheit bedeutet im gerichteten Fall zwei oder mehr Bögen mit demselben Anfangsknoten und demselben Endknoten, was wieder eine Definition im Stil der Inzidenzfunktion braucht, wie in Bang-Jensen und Gutins Digraphs.

Die praktischen Folgen übertragen sich direkt: Eingangs- und Ausgangsgrad zählen Bögen statt verschiedener Nachbarn, eine gerichtete Schleife erhöht beide um 1, und die Euler-Bedingungen für einen gerichteten Multigraphen vergleichen weiterhin an jedem Knoten Eingangs- mit Ausgangsgrad.

11. Häufige Fehler

12. Glossar

BegriffBedeutung
Einfacher GraphKeine Schleifen, keine parallelen Kanten; E ⊆ [V]²
MultigraphParallele Kanten erlaubt; Schleifen je nach Autor erlaubt oder nicht
PseudographSchleifen und parallele Kanten erlaubt
Parallele KantenZwei oder mehr verschiedene Kanten mit demselben Paar von Enden; auch Mehrfachkanten genannt
VielfachheitDie Anzahl der Kanten zwischen einem gegebenen Knotenpaar
SchleifeEine Kante, deren beide Enden derselbe Knoten sind; trägt 2 zu dessen Grad bei
Inzidenzfunktion ψOrdnet jeder Kante das Knotenpaar zu, das sie verbindet, und gibt Kanten damit eine eigene Identität
Zugrunde liegender einfacher GraphWas nach dem Zusammenfassen paralleler Kanten und dem Löschen von Schleifen übrig bleibt
Schleifenloser GraphParallele Kanten erlaubt, Schleifen nicht
TaillenweiteLänge des kürzesten Kreises; 2 bei parallelen Kanten, 1 bei einer Schleife

13. Häufig gestellte Fragen

Was ist der Unterschied zwischen einem einfachen Graphen und einem Multigraphen?

Ein einfacher Graph erlaubt höchstens eine Kante zwischen zwei Knoten und keine Kante von einem Knoten zu sich selbst, weil seine Kantenmenge eine Menge 2-elementiger Teilmengen der Knotenmenge ist. Ein Multigraph erlaubt mehrere verschiedene Kanten zwischen demselben Paar, und das erfordert eine andere Definition, in der Kanten eine eigene Identität haben und eine Inzidenzfunktion angibt, welches Paar jede Kante verbindet. Ein Pseudograph erlaubt zusätzlich Schleifen.

Ist das Königsberger Brückenproblem ein Multigraph?

Ja, und zwar notwendigerweise. Zwei Brücken verbinden das Nordufer mit der Insel und zwei weitere das Südufer mit der Insel, das Modell hat also parallele Kanten und kann kein einfacher Graph sein. Das ist wichtig: Der Multigraph der sieben Brücken hat die Grade 3, 5, 3 und 3, alle vier ungerade, also existiert kein Eulerweg, und das war 1736 Eulers Antwort. Fasst man die parallelen Brücken zusammen, werden die Grade zu 2, 3, 2 und 3, von denen nur zwei ungerade sind, und ein Eulerweg würde existieren. Vereinfachen ändert die Antwort.

Zählt eine Schleife beim Grad einmal oder zweimal?

Zweimal. Der Grad zählt die Kantenenden an einem Knoten, und eine Schleife hat zwei Enden, die beide am selben Knoten hängen. Die Konvention ist erzwungen, nicht gewählt: Das Handschlaglemma besagt, dass die Grade sich zur doppelten Kantenzahl summieren, und sein Beweis zählt die zwei Enden jeder Kante, also würde der Grad 1 für eine Schleife es brechen. Ein Knoten, der nur eine Schleife trägt, hat den Grad 2 und ist nicht isoliert.

Ändern parallele Kanten die chromatische Zahl?

Nein. Eine echte Färbung verlangt, dass die beiden Enden jeder Kante verschieden gefärbt sind, und eine doppelte Kante wiederholt nur eine bereits bestehende Bedingung, also sind die echten Färbungen eines Multigraphen genau die seines zugrunde liegenden einfachen Graphen, und chromatische Zahl und chromatisches Polynom bleiben unverändert. Eine Schleife ist etwas anderes: Sie würde verlangen, dass ein Knoten eine andere Farbe hat als er selbst, also hat ein Graph mit einer Schleife überhaupt keine echte Färbung.

Kann ich einen Multigraphen einfach vereinfachen, bevor ich einen Algorithmus ausführe?

Nur für Eigenschaften, die nicht von der Vielfachheit abhängen. Zusammenhang, Planarität und Färbung überstehen das Vereinfachen. Minimale Schnitte, maximale Flüsse, Anzahlen von Spannbäumen, Taillenweite und Eulerwege nicht. Wenn Sie gewichtete parallele Kanten zusammenfassen müssen, summieren Sie die Gewichte bei Kapazitäten und nehmen Sie das Minimum bei Distanzen, und beachten Sie, dass diese beiden Regeln unvereinbar sind. Oft ist die bessere Antwort, gar nicht zu vereinfachen, da BFS, DFS, Dijkstra, Kruskal und Prim alle unverändert korrekt auf Multigraphen laufen.

Wie speichere ich einen Multigraphen im Code?

Geben Sie jeder Kante eine Identität. Eine Kantenliste aus Datensätzen, jeder mit eigener ID, eigenen Endpunkten und Attributen, ist der direkte Ausdruck der Definition über die Inzidenzfunktion und das Format, das mit Daten pro Kante skaliert. Eine Adjazenzliste funktioniert ebenfalls, wobei ein Nachbar einmal pro paralleler Kante eingetragen wird. Eine Adjazenzmatrix kann nur Anzahlen speichern, also keine Attribute pro Kante tragen, und eine boolesche Matrix löscht die Vielfachheit stillschweigend. Was Sie auch wählen: Verwenden Sie für eine Menge besuchter oder ausgewählter Kanten nie das Endpunktpaar als Schlüssel.

14. Quellen

Die Definitionen, Sätze und Zuschreibungen oben stammen aus diesen Quellen, in chronologischer Reihenfolge.

  1. Euler, L. (1736). "Solutio problematis ad geometriam situs pertinentis." Commentarii Academiae Scientiarum Petropolitanae 8 (erschienen 1741), 128 bis 140. Die Königsberger Brücken, als Multigraph modelliert.
  2. Kirchhoff, G. (1847). "Über die Auflösung der Gleichungen, auf welche man bei der Untersuchung der linearen Vertheilung galvanischer Ströme geführt wird." Annalen der Physik 148(12), 497 bis 508. Der Matrix-Baum-Satz, entwickelt an elektrischen Netzwerken mit parallelen Bauteilen.
  3. Harary, F. (1969). Graph Theory. Reading, Massachusetts: Addison-Wesley. Unterscheidet Graphen, Multigraphen und Pseudographen.
  4. Karger, D. R. (1993). "Global Min-cuts in RNC, and Other Ramifications of a Simple Min-cut Algorithm." Proceedings of the 4th Annual ACM-SIAM Symposium on Discrete Algorithms, 21 bis 30. Der Kontraktionsalgorithmus, der während des Laufs parallele Kanten erzeugt.
  5. Karger, D. R. und Stein, C. (1996). "A New Approach to the Minimum Cut Problem." Journal of the ACM 43(4), 601 bis 640.
  6. Bollobás, B. (1998). Modern Graph Theory. Graduate Texts in Mathematics 184. New York: Springer.
  7. West, D. B. (2001). Introduction to Graph Theory, 2. Auflage. Upper Saddle River: Prentice Hall. Definiert einen Graphen über eine Knotenmenge, eine Kantenmenge und eine Endpunktrelation, die Schleifen und parallele Kanten zulässt.
  8. Bondy, J. A. und Murty, U. S. R. (2008). Graph Theory. Graduate Texts in Mathematics 244. London: Springer. Quelle der Definition über die Inzidenzfunktion in Abschnitt 1.
  9. Bang-Jensen, J. und Gutin, G. (2009). Digraphs: Theory, Algorithms and Applications, 2. Auflage. London: Springer. Gerichtete Multigraphen.
  10. Cormen, T. H., Leiserson, C. E., Rivest, R. L. und Stein, C. (2009). Introduction to Algorithms, 3. Auflage. Cambridge, Massachusetts: MIT Press.
  11. Wilson, R. J. (2010). Introduction to Graph Theory, 5. Auflage. Harlow: Prentice Hall. Entwickelt Multigraphen ab dem ersten Kapitel parallel zu einfachen Graphen.
  12. Chartrand, G., Lesniak, L. und Zhang, P. (2015). Graphs & Digraphs, 6. Auflage. Boca Raton: CRC Press.
  13. Diestel, R. (2017). Graph Theory, 5. Auflage. Graduate Texts in Mathematics 173. Berlin: Springer. Quelle der Definition einfacher Graphen und der Multigraph-Formulierung mit zwei Endabbildungen.

Bauen Sie die sieben Brücken selbst

Legen Sie die vier Landmassen an, fügen Sie die zwei parallelen Brücken zur Insel hinzu und prüfen Sie die Grade. Löschen Sie dann ein Duplikat und sehen Sie zu, wie sich die Parität ändert.

Visualisierer öffnen

Jede Brücke genau einmal

Legen Sie die vier Landmassen an, fügen Sie die zwei parallelen Brücken zur Insel hinzu und prüfen Sie die Grade. Löschen Sie dann ein Duplikat und sehen Sie zu, wie die Parität von unmöglich zu möglich kippt.

Eulerweg-Visualisierer starten