Читать книгу Algorithmen und Datenstrukturen - Gunter Saake - Страница 70

Beispiel 3.4 Rekursive Funktionsdefinition

Оглавление

Ein Beispiel für eine Rekursion zeigt folgende Definition:

f(x, y) = if x = 0 then y else (
if x > 0 then f(x − 1, y) + 1 else −f (−x, −y) fi) fi

Die bisherige Auswertungsstrategie kann auf rekursive Funktionsdefinitionen ebenfalls angewandt werden, so dass wir folgende Auswertungen erhalten:

f(0, y) y für alle y
f (1, y) f (0, y) + 1 y + 1
f(2, y) f (1, y) + 1 (y + 1) + 1 y + 2
f(n, y) y + n für alle nint, n > 0
f(−1, y) f (1, −y) −(1− y) y − 1
f(x, y) x + y für alle x, yint

Unsere rekursive Definition realisiert also die Addition nur mithilfe der Successor-Funktion »+1«.


Algorithmen und Datenstrukturen

Подняться наверх