Tengo dificultades para comprender cómo funciona la Función Ackermann. Creo que mi comprensión de la recursión es defectuosa.Ackermann Función Comprensión
Este es el código en Python:
def naive_ackermann(m, n):
global calls
calls += 1
if m == 0:
return n + 1
elif n == 0:
return naive_ackermann(m - 1, 1)
else:
return naive_ackermann(m - 1, naive_ackermann(m, n - 1))
Si hago la llamada de función de naive_ackermann (3,4), ¿cómo y por qué acaban obteniendo 125?
Los comentarios serán apreciados.
Gracias
¿Qué debería salir en el papel? –
de acuerdo con wikipedia 125 es la respuesta correcta ... –
No entiendo cómo funciona la función. – Hummus