Junior — Middle
Magyarázza el a rekurzív függvények fogalmát és működésüket
sobes.tech MI
Válasz az MI-től
A rekurzív függvény olyan függvény, amely saját magát hívja meg a probléma megoldására. A problémát egyszerűbb, ugyanazon típusú alfeladatokra bontja, amíg el nem éri az alapvető esetet, amikor nincs szükség további hívásokra.
Működési elv:
- A függvény saját magát hívja meg módosított paraméterekkel, közelebb hozva a megoldást az alapvető esetre.
- Amikor eléri az alapvető esetet, a függvény elkezdi visszaadni az eredményeket a hívási lánc mentén.
Példa: egy szám n faktoriálisának (n!) kiszámítása
def factorial(n):
if n == 0:
return 1 # alapvető eset
else:
return n * factorial(n - 1) # rekurzív hívás
Itt a factorial saját magát hívja n-1-gyel, amíg el nem éri a 0-t, ekkor kezd visszaadni értékeket felfelé a láncban.
A rekurzió hasznos olyan feladatoknál, amelyek természetesen kisebb, hasonló feladatokra oszthatók, például fák bejárására, Fibonacci-számok számítására, rendezésre stb.