Class Summary |
ArrayAbzaehlreim |
n Kinder stehen im Kreis, jedes k-te wird abgeschlagen. |
ArraySchlange |
Implementation des Interface Schlange mit Hilfe eines Arrays |
ArraySchlangeTest |
Programm zum Testen der Methoden des ADT Schlange. |
AusnahmeDatum |
Klasse AusnahmeDatum bestehend aus drei Integers (Tag, Monat, Jahr)
und einem Konstruktor zum Anlegen eines Datums und einer Methode zur
Umwandlung eines Datums in einen String. |
Automat |
Endlicher Automat mit delta : Zustand x Eingabe -> Zustand. |
AVLBaum |
Ein AVLBaum ist ein SuchBaum, bei dem alle Knoten ausgeglichen
sind. |
AVLBaum.AVLKnoten |
|
AVLBaum.Status |
|
AVLBaumTest |
Klasse zum Testen des AVLBaums: Einfuegen und Loeschen von Character |
Bedingung |
Verzweigung durch Bedingung (if-Anweisung, Bedingungsoperator)
Vergleichsoperatoren: < kleiner
<= kleiner gleich
== gleich
> groesser
>= groesser gleich
!= ungleich
logische Operatoren: && und
|| oder
^ exklusives oder
! nicht |
BreitenSuche |
Klasse BreitenSuche enthaelt statische Methode breitenSuche,
die mit Hilfe einer Schlange eine iterativ organisierte Breitensuche
auf einem Baum durchfuehrt |
BubbleSort |
|
BucketSort |
Sortieren durch Verteilen auf Buckets (Faecher). |
CharKeller |
Abstrakter Datentyp Character-Keller mit Elementen vom Typ char |
Collatz |
Berechnet Collatz-Funktion, d.h. |
Datum |
Klasse Datum
bestehend aus drei Integers (Tag, Monat, Jahr)
und zwei Konstruktoren zum Anlegen eines Datums
und einer Methode zur Umwandlung eines Datums in einen String |
DatumTest |
Klasse DatumTest, testet die Klasse Datum |
Dijkstra |
implementiert den single source shortest path Algorithmus nach Dijkstra |
Edge |
Klasse zur Repraesentation einer Kante |
Fakultaet |
Berechnung der Fakultaet mit for-, while- und do-while-Schleifen
n! := 1 fuer n=0,
1*2*3* ... |
Fall |
Verzweigung durch Fallunterscheidung (switch/case-Anweisung) |
Feld |
Zusammenfassung mehrerer Daten desselben Typs zu einem Feld |
Floyd |
berechnet alle kuerzesten Wege und ihre Kosten mit Algorithmus von Floyd |
FloydTest |
testet den Floyd-Algorithmus |
GGT |
Berechnung des GGT
ggt(x,y) = groesster gemeinsamer Teiler von x und y
x falls x = y
ggt(x,y) = ggt(x-y, y) falls x > y
ggt(x, y-x) falls y > x
denn wegen x=t*f1 und y=t*f2 folgt (x-y) = t*(f1-f2)
x falls y = 0
ggt(x,y) = ggt(y, x mod y) sonst |
Gleitkomma |
Gleitkommaoperationen |
Graph |
Klasse zur Implementation eines Graphen basierend auf Vertex und Edge |
GraphIO |
Routinen zum Einlesen eines gerichteten Graphen |
GraphTest |
testet die Graph-Algorithmen |
GraphTraverse |
traversiert rekursiv alle Knoten eines gerichteten Graphen in TiefenSuche |
Hamilton |
sucht einen Hamiltonkreis in einem gerichteten Graphen |
Hanoi |
Tuerme von Hanoi:
n Scheiben mit abnehmender Groesse liegen auf dem Startort A. |
HashMapTest |
testet die Klasse java.util.HashMap |
HashSetTest |
testet die Klasse java.util.HashSet |
HeapSort |
Iteratives Sortieren mit Heapsort
Entnimm einem Heap so lange das kleinste Element, bis er leer ist. |
Kind |
Klasse Kind
bestehend aus Nummer und Verweis auf Nachbarkind
mit Konstruktor zum Anlegen eines Kindes |
Klammer |
Ueberprueft Klammerung mit Hilfe eines Kellers
und markiert die erste fehlerhafte Position |
Konstanten |
Einsatz von Konstanten fuer ganze Zahlen, Gleitkomma und Character |
LinkedListTest |
testet die Klasse java.util.LinkedList |
Matrix |
Multiplikation zweier NxN-Matrizen (ohne Ein- und Ausgabe)
c[i][j] := Summe {k=0 bis N-1} ( a[i][k] * b[k][j] ) |
Merge |
|
Methoden |
Klassen-Methoden
mit und ohne formale Parameter
mit und ohne Rueckgabewert |
Parameter |
Uebergabe von Arrays an Methoden |
Person |
|
PersonComparator |
Implementation fuer das Interface Comparator |
PersonComparatorTest |
sortiert LinkedList mithilfe von PersonComparator |
PersonStudentTest |
Klasse PersonStudentTest
verwendet Instanzen der Klasse Person und der Klasse Student |
PersonTest |
Klasse PersonTest, testet Klasse Person |
Postfix |
Wandelt Infix-Ausdruck in Postfix-Ausdruck um. |
PostfixBaumBau |
Klasse PostfixBaumBau enthaelt statische Methode postfixBaumBau,
die einen Postfix-Ausdruck uebergeben bekommt
und den zugehoerigen Baum zurueckliefert. |
PostfixPreorderTest |
Klasse PostfixPreorderTest konstruiert unter Verwendung von PostfixBaumBau
einen Baum aus dem eingelesenen String und gibt ihn in Preorder-Notation
aus unter Verwendung von PreorderTraverse |
PreorderTraverse |
Schrittweise Preordertraversierung eines Baumes mit Interface Enumeration |
QuickSort |
rekursives Sortieren mit Quicksort
Idee: partitioniere die Folge
in eine elementweise kleinere und eine elementweise groessere Haelfte
und sortiere diese nach demselben Verfahren |
QuickSortTest |
testet Quicksort |
Rekursion |
Rekursive Methoden |
Result |
Routinen zum Anzeigen der Loesungen, kodiert in den Arbeitsvariablen |
Reverse |
Liest eine Folge von ganzen Zahlen ein
und gibt sie in umgekehrter Reihenfolge wieder aus. |
Schleife |
while-Schleife, do-while-Schleife, break, continue, for-Schleife |
SelectionSort |
|
Sichtbarkeit |
Sichtbarkeit und Lebensdauer von Variablen. |
Sieb |
Sieb des Eratosthenes zur Ermittlung von Primzahlen. |
SortTest |
testet Sortierverfahren |
SpielBaum |
Klasse Spielbaum mit der Methode minmax zum Auswerten einer Stellung |
Student |
Klasse Student, spezialisiert die Klasse Person
durch statische Klassenvariable next_mat_nr;
durch weitere Datenfelder mat_nr, fach, jsb
durch eigenen Konstruktor und durch eigene Methode jahrgang
welche die Methode jahrgang der Klasse Person ueberschreibt |
StudentTest |
Klasse StudentTest, testet die Klasse Student |
SuchBaum |
Implementation eines binaeren Suchbaums ueber Comparable-Objekten. |
SuchBaumTest |
Testet den SuchBaum mit Character-Objekten. |
Suche |
lineare Suche eines Wertes und des Minimums im Array
und binaere Suche im geordneten Array |
TestDatum1 |
|
TestDatum2 |
|
TiefenSuche |
Klasse Tiefensuche enthaelt statische Methode tiefenSuche,
die mit Hilfe eines Kellers eine iterativ organisierte Tiefensuche
auf einem Baum durchfuehrt (= preorder) |
TopoSort |
Topologisches Sortieren eines gerichteten Graphen |
Traverse |
Klasse Traverse
bestehend aus vier statischen Methoden
zum Traversieren von Baeumen |
TraverseTest |
Traversierungen des binaeren Baums mit Operanden in // / \ / \
den Blaettern und Operatoren in den inneren Knoten: // F * X Y |
TreeSetTest |
testet die Klasse java.util.TreeSet |
Ueberlauf |
Integer-Ueberlauf |
Umwandlung |
implizite und explizite Typumwandlungen zwischen einfachen Datentypen |
Vertex |
Klasse zur Repraesentation eines Knoten |
VerweisAbzaehlreim |
Klasse VerweisAbzaehlreim
implementiert einen Abzaehlreim mit k Silben fuer n Kinder mit Verweisen
verwendet dabei Objekte vom Typ Kind |
VerweisBaum |
Klasse VerweisBaum mit vier Konstruktoren und vier Methoden, sowie
einer inneren Klasse Knoten, mit den Datenfeldern inhalt, links, rechts
Ein Verweisbaum enthaelt einen Knoten als Wurzel, der auf zwei weitere
Knoten verweisen kann, die den linken und rechten Teilbaum repraesentieren. |
VerweisBaum.Knoten |
|
VerweisKeller |
Implementation eines Kellers mithilfe von Verweisen |
VerweisKeller.KellerEintrag |
|
VerweisListe |
Implementation des Interface Liste mithilfe von Verweisen |
VerweisListe.ListenEintrag |
|
VerweisListeTest |
Testet die Implementation der VerweisListe |
Zeichen |
Umwandlung von Character zur Zahl
Umwandlung von Zahl zum Character |
Zeichenkette |
Interpretiert zwei eingelesene Zeichenfolgen als Strings
und vergleicht sie. |
Ziffern |
Erwartet eine Folge von Ziffern
und berechnet den zugehoerigen Wert. |