Deine Mission
Erzeuge den Aufrufbaum für N=4. Lies ihn danach auf zwei Arten und bestimme die gesamte Aufrufzahl.
30-Sekunden-Start: Klicke unten nur auf die Wurzel 4. Mehr musst du noch nicht wissen.
Du musst Rekursion noch nicht „im Kopf können“. Klappe einfach jeden Aufruf in seine zwei Kinder auf.
Erzeuge den Aufrufbaum für N=4. Lies ihn danach auf zwei Arten und bestimme die gesamte Aufrufzahl.
30-Sekunden-Start: Klicke unten nur auf die Wurzel 4. Mehr musst du noch nicht wissen.
fun1(N): fun2(N):
falls N == 1: falls N == 1:
gib N aus gib N aus
sonst: sonst:
gib N aus fun2(N-1)
fun1(N-1) gib N aus
fun1(N-1) fun2(N-1)
DIREKTE MANIPULATION
Jeder Knoten mit N > 1 startet zweimal N−1. Klicke offene Knoten auf. Ein 1-Knoten stoppt.
Der Baum ist derselbe. Nur der Zeitpunkt von cout ändert die Ausgabereihenfolge.
fun1cout steht vor beiden Kindern.
fun2cout steht zwischen beiden Kindern.
cout-Zeile. Folge dem Code. Sobald der Stift diese Zeile erreicht, notierst du den aktuellen Knoten.fun1 liest den Aufrufbaum in Preorder, fun2 in Inorder. Die Namen sind weniger wichtig als die Position der Ausgabezeile.Wie viele Funktionsaufrufe gibt es bei fun1(4) insgesamt — inklusive des ersten Aufrufs?
1 + 2 + 4 + 8.Liefere genau die vier Ergebnisse der Originalaufgabe. Leerzeichen oder Kommas zwischen Ausgaben sind beide okay.
Der Musterweg öffnet nach deinem ersten Prüfungsversuch. Ohne Versuch: zweimal bewusst auf „Musterweg“ klicken.
fun1(4): 4 3 2 1 1 2 1 1 3 2 1 1 2 1 1
fun2(4): 1 2 1 3 1 2 1 4 1 2 1 3 1 2 1
Auf Ebene 1, 2, 3 und 4 liegen 1, 2, 4, 8 Aufrufe. Also:
1 + 2 + 4 + … + 2N−1 = 2N − 1
Damit entstehen bei N=4 genau 15 und bei N=10 genau 1023 Aufrufe.
Würdest du morgen wieder alle Knoten zählen — nicht nur die Tiefe?
Noch nicht markiert.
Aufgabe und Musterlösung: Probeklausur.pdf, Aufgabe 13. Lernführung: lokale Problemnotizen und ADS-Lernpräferenzen.