Übungsaufgabe zur Veranstaltung Objektorientiertes Programmieren im Bachelorstudiengang Wirtschaftsinformatik an der Hochschule Rosenheim.
Für alle Teilaufgaben gilt: Es darf kein for
oder while
verwendet werden.
Die Aufgaben sollen allein durch Rekursion realisiert werden.
Vorgehensweise:
- Identifizieren Sie den Terminalfall; wann ist die Lösung trivial?
- Identifizieren Sie den Rekursionsfall; wann ist die Lösung nicht-trivial, aber auf eine andere Lösung zurückzuführen?
- Welches sind die Parameter für die Methode, und wie müssen diese im Rekursionsfall angepasst werden?
Hinweis: Da die Signaturen bereits vorgegeben sind, ist oft eine Hilfsmethode nötig, um die eigentliche Rekursion zu realisieren.
Implementieren Sie die generischen statischen Methoden toString
und contains
der vorgegebenen Klasse Arrays
.
Welche Parameter sind für die Hilfsfunktion sinnvoll?
Hinweis: Versuchen Sie ohne Kopien des Arrays auszukommen.
Implementieren Sie die Methoden addRek
und containsRek
der generischen Klasse Liste
.
Als Hilfestellung sind die beiden iterativen Implementierungen (add
und contains
) gegeben.
Hinweis: Sie können die Hilfsmethoden entweder in der Klasse
Liste
anlegen, oder aber die KlasseListe.Element
erweitern.
Implementieren Sie die Methoden addRek
und containsRek
der generischen Klasse Baum
.
Als Hilfestellung sind auch hier die iterativen Implementierungen (add
und contains
) gegeben.
Implementieren Sie die Methoden toStringRek
der Klassen Liste
und Baum
rekursiv.
Die jeweils iterativen toString
Methoden sind gegeben.