Der Knoten Knoten int nodeName Vector edgesTo Point p boolean L boolean S int lambda int father boolean color color wird zur Veranschaulichung im Applet verwendet: color:Knoten, der einen neuen Baum erzeugt Name des Knotens Vektor, in dem Kanten gespeichert sind, die auf andere Knoten zeigen Koordinaten des Knotens ist der Knoten in der Menge L und/oder S Kennzeichnung des Knotens der Vater des Knotens
Die Kante Kante int startWeight int endWeight boolean A int toNodeName boolean selected boolean color Kapazität Fluß ist die Kante in der Menge A Name des Knotens, auf den gezeigt wird Kapazität Fluß selected und color werden zur Veranschaulichung im Applet verwendet: selected:Kante wird gerade bearbeitet color:Kanten, die einen Durch- bruch erzielten.
Fluß = 0
S 0 2,3 x,y true false false t 1 x,y false false 1 2 2,4 x,y false false S->2 4 0 false 3 false S->1 6 0 false 2 false startWeight endWeight A toNodeName selected color nodeName edgesTo p L S lambda father color
Vorwärtskante Rückwärtskante Vorwärts- und Rückwärtskanten werden immer aktuell bestimmt, indem man den ausgewählten Knoten als Ausgangspunkt betrachtet.
1 2 3,5 x,y true 3 s false S 0 2,3 x,y true false x,y true 1 true nodeName edgesTo p L S lambda father color
S 0 2,3 x,y true false x,y true false 3 1 false nodeName edgesTo p L S lambda father color x,y false 0 false 3 4 2,6 x,y false false 1 2 3,4 x,y true 6 0 true 2 3 4,6,7 x,y true false 4 0 false Von Knoten 1 erreichbarer Knoten t 1 x,y false 0 false Knoten 2 wurde von s gekennzeichnet, d.h. dieser Knoten kann von Knoten 1 nicht mehr erreicht werden Knoten 3 kann von Knoten 1 nicht erreicht werden, da dieser nur mit einer Rückwärtskante ohne Fluß ver- bunden ist (siehe Schritt 7)
4 5 6 x,y true false 3 1 false S 0 2,3 x,y true false nodeName edgesTo p L S lambda father color x,y true false 1 2 false 3 4 2,6 x,y true false 5 2 false 1 2 3,5 x,y true 6 0 false 2 3 4,6,7 x,y true false 0 1 true Von Knoten 1 erreichbarer Knoten Von Knoten 2 erreichbare Knoten Diese Kante erfüllt die Kriterien einer Vor- wärtskante nicht mehr.
Vorwärtskannte (siehe Schritt 6) Rückwärtskante x,y true false 2 3 false 2 3 4,6,7 x,y true false 2 3 false
4 5 6 x,y true false 3 1 false S 0 2,3 x,y true false nodeName edgesTo p L S lambda father color x,y true false 1 2 false 3 4 2,6 x,y true false 5 2 false 1 2 3,5 x,y true 6 0 false 2 3 4,6,7 x,y true 0 1 true
t 1 x,y true false 2 5 false S-> true 2 true 1-> true 5 true 4-> true 6 true 5->t true 1 true
Der maximale Fluß beträgt: = 7