MINT üben

Rekursive Methoden entwerfen

Dreißig Übungen zum Entwerfen rekursiver Methoden — vom Rezept bis zum Hilfsparameter.

Dein Fortschritt:
0 / 0 Aufgaben
1

Übungsaufgaben

Dreißig Übungen zum Klicken, Zuordnen, Rechnen und Knobeln — von AFB I bis AFB III. Jede Übung gibt dir sofort Rückmeldung; wenn du nicht weiterkommst, helfen die gestuften Tipps.

A1
Das Rezept in der richtigen Reihenfolge
AFB I

Gib die Schritte beim Entwurf einer rekursiven Methode in der richtigen Reihenfolge an.

Ziehe die Karten in die richtige Reihenfolge — mit der Tastatur: ↑/↓ verschiebt, Shift+↑/↓ wechselt nur den Fokus.
1Festlegen, was die Methode für eine Eingabe liefern soll
2Das Problem durch ein kleineres Problem derselben Art ausdrücken
3Den einfachsten Fall bestimmen, der ohne Selbstaufruf lösbar ist
4Den Rekursionsschritt formulieren: Teilergebnis verwenden und verknüpfen
5Terminierung begründen und mit Beispielen testen
Wer ohne klare Festlegung anfängt, weiß nicht, was der Selbstaufruf liefert — dann kann man ihm auch nicht „vertrauen“. Geprüft wird am Schluss.
Ansatz: Was muss feststehen, bevor man sich auf das Ergebnis eines Selbstaufrufs verlassen kann?
Weiter: Die Probe kommt immer zuletzt.
A2
Der passende einfachste Fall
AFB I

Ordne jedem Problem die Abbruchbedingung zu, die zu einer naheliegenden rekursiven Lösung passt.

Ziehe jede Karte in den passenden Korb — oder wähle sie mit Enter aus und drücke dann die Ziffer des Korbs (0 legt sie zurück).
1n == 0
2n < 10
3s.length() == 0
4i == a.length
Der einfachste Fall hängt davon ab, was schrumpft: eine Zahl bis 0, Ziffern bis zur einstelligen Zahl, ein Text bis zur leeren Zeichenkette, ein Index bis zum Ende der Reihung.
Ansatz: Überlege zuerst: Was wird bei jedem Schritt kleiner — eine Zahl, die Anzahl der Ziffern, ein Text oder der Rest einer Reihung?
Weiter: Bei Ziffern ist die einstellige Zahl der einfachste Fall.
A3
Zerlegungen der Potenz
AFB I

Gesucht ist eine rekursive Methode für \(b^e\) mit \(e \ge 0\). Nenne alle Aussagen, die als Abbruchbedingung oder Zerlegung korrekt sind.

Mehrere Antworten sind richtig. Markiere alle zutreffenden und klicke dann auf „Auswahl prüfen“.
Zwei verschiedene Zerlegungen führen zum Ziel: Die erste verkleinert e um 1 (e Aufrufe), die zweite halbiert e — das braucht nur etwa log₂ e Aufrufe und ist die Idee der schnellen Potenz.
Ansatz: Setze Zahlen ein, z. B. \(b = 2\), \(e = 4\).
Weiter: Die Halbierung funktioniert nur, wenn e gerade ist.