Borůvka-Algorithmus: Unterschied zwischen den Versionen

Aus KGS-Wiki
KKeine Bearbeitungszusammenfassung
Zeile 23: Zeile 23:
# Erzeuge einen neuen Graphen <code>T</code>, der später der gesuchte Spannbaum wird.
# Erzeuge einen neuen Graphen <code>T</code>, der später der gesuchte Spannbaum wird.
# Füge alle Knoten, aber keine Kanten des Graphen <code>G</code> zu <code>T</code> hinzu.
# Füge alle Knoten, aber keine Kanten des Graphen <code>G</code> zu <code>T</code> hinzu.
# Wiederhole die folgenden Schritte, bis <code>T</code> zusammenhängend ist:
# Wiederhole die folgenden Schritte, bis <code>T</code> [[Zusammenhang (Graph)|zusammenhängend]] ist:
## Füge zu jeder [[Zusammenhangskomponente]] von <code>T</code> deren kleinste ausgehende Kante in <code>G</code> hinzu.
## Füge zu jeder [[Zusammenhang (Graphen)#Zusammenhangskomponente|Zusammenhangskomponente]] von <code>T</code> deren kleinste ausgehende Kante in <code>G</code> hinzu.


== Beispiel ==
== Beispiel ==

Version vom 30. März 2023, 16:13 Uhr

Ein Beispielgraph

Der Borůvka-Algorithmus ist ein Algorithmus, der zu einem gegebenen gewichteten Graphen einen minimalen Spannbaum erzeugt.

Der Algorithmus wurde 1926 von Otakar Borůvka entworfen und arbeitet wie folgt:

  1. Gegeben sei ein Graph G.
  2. Erzeuge einen neuen Graphen T, der später der gesuchte Spannbaum wird.
  3. Füge alle Knoten, aber keine Kanten des Graphen G zu T hinzu.
  4. Wiederhole die folgenden Schritte, bis T zusammenhängend ist:
    1. Füge zu jeder Zusammenhangskomponente von T deren kleinste ausgehende Kante in G hinzu.

Beispiel

So erzeugt der Borůvka-Algorithmus aus dem Beispielgraphen einen MST:

Da nun zusammenhängend ist, terminiert der Algorithmus.