Lernziele
Die Klasse partition |
Die Klasse dynamic_trees |
Die Klasse tree_collection |
Die Klasse file_istream |
Die Klasse file_ostream |
Die Klasse string_istream |
Die Klasse string_ostream |
Zu den einfachen Datentypen und Containertypen von LEDA gehören noch einige Klassen, die wir in dieser Einführung nicht vorgestellt haben.
Die Klassen partition,
dynamic_trees und
tree_collection finden keinen
unmittelbaren Gebrauch in Anwendungsprogrammen. Sie können aber
als Bausteine für andere Datentypen und Algorithmen benutzt
werden.
So ist z. B. die Klasse partition
ein unverzichtbarer Bestandteil von Kruskals
Algorithmus zur Berechnung minimaler aufspannender
Bäume, den wir dank LEDA nicht mehr selbst
implementieren müssen. (Es steht uns natürlich frei, unsere eigene
Version davon zu schreiben; dann können wir auf
partition zurückgreifen.) Eine
partition verwaltet Teilmengen einer Menge
und erlaubt es, Teilmengen zu größeren Teilmengen zu vereinigen.
Ein Objekt vom Typ
dynamic_trees ist
eine Menge von Bäumen, deren Kanten zur Wurzel hin gerichtet und
mit Informationen versehen sind. Die Klasse erlaubt es, einen Baum
zu einem Teilbaum eines anderen zu machen. Eine
tree_collection ist
fast dasselbe, nur tragen hier die Knoten die Informationen, nicht die
Kanten.
Die Klassen file_istream und
file_ostream sind äquivalent zu den
Klassen istream bzw.
ostream der
C++-Standardbibliothek und nur aus Gründen der Rückwärtskompatibilität in LEDA enthalten.
Die beiden Klassen string_istream
und string_ostream verwirklichen Ein-
bzw. Ausgabestreams, die auf Strings arbeiten, d. h., sie nehmen ihre
Eingabe aus einem String und schreiben ihre Ausgabe in einen
internen Stringpuffer. Laut
Christian Uhrig von der Firma Algorithmic Solutions „bringen sie
nichts revolutionär Neues.“
Weitere Informationen zu diesen Klassen können auf den Manualseiten des entsprechenden Abschnitts des Manuals gefunden werden.