Gelenkpunkt (Graphentheorie)

aus Wikipedia, der freien Enzyklopädie
Ein ungerichteter Graph mit n=5 Knoten und 3 Gelenkpunkten (rot markiert)
Ein ungerichteter Graph ohne Gelenkpunkte

In der Graphentheorie bezeichnet ein Gelenkpunkt, Artikulationspunkt, Artikulation oder Schnittknoten einen Knoten eines Graphen, dessen Entfernen die Anzahl der zusammenhängenden Teilgraphen erhöhen würde. Wenn der Graph vor dem Entfernen des Knotens zusammenhängend war, ist er danach unzusammenhängend. Ein Gelenkpunkt ist ein Spezialfall eines Trenners.

Der Begriff des Gelenkpunkts ist auch für gerichtete Graphen wohldefiniert[1], wird aber hauptsächlich für ungerichtete Graphen verwendet. Grundsätzlich kann ein zusammenhängender ungerichteter Graph mit n Knoten nicht mehr als n-2 Gelenkpunkte besitzen.

Eine Brücke ist eine Kante analog zu einem Gelenkpunkt; das heißt, das Entfernen der Brücke erhöht die Anzahl der zusammenhängenden Teilgraphen.

Finden von Gelenkpunkten

Ein trivialer Algorithmus:

C = leere Menge (nach Beenden des Algorithmus wird sie die Gelenkpunkte enthalten)
a = Anzahl der zusammenhängenden Teilgraphen (gefunden mit Tiefensuche/Breitensuche)
for alle Knoten i in V auf den Kanten zeigen
    b = Anzahl der zusammenhängenden Teilgraphen, wenn i entfernt wird
    if b > a
        i ist ein Gelenkpunkt
        C = C + {i}
    endif
endfor

Es gibt einen Algorithmus, der mittels Tiefensuche eine wesentlich bessere Laufzeit von erreicht[2].

Gelenkpunkte in Bäumen

Ein Knoten eines Baums G ist genau dann ein Gelenkpunkt, wenn der Grad des Knotens größer als 1 ist.

Literatur

  • Nirmala, K.; Ramachandra Rao, A. The number of cut vertices in a regular graph. Cah. Cent. Étud. Rech. Opér. 17, 295–299 (1975).

Weblinks

Einzelnachweise

  1. Rao, S.B.; Ramachandra Rao, A. The number of cut vertices and cut arcs in a strong directed graph. Acta Math. Acad. Sci. Hung. 22, 411–421 (1972)
  2. Präsentation des O(n+m) Algorithmus (auf Englisch; PDF; 447 kB)