Junior — Middle
Leg het concept van recursieve functies uit en hoe ze werken
sobes.tech AI
Antwoord van AI
Een recursieve functie is een functie die zichzelf aanroept om een probleem op te lossen. Ze splitst het probleem op in eenvoudigere subproblemen van hetzelfde type, totdat een basisgeval wordt bereikt waarbij geen verdere oproepen nodig zijn.
Werking:
- De functie roept zichzelf aan met gewijzigde parameters, waardoor de oplossing dichter bij het basisgeval komt.
- Wanneer het basisgeval wordt bereikt, begint de functie resultaten terug te geven langs de oproepketen.
Voorbeeld: het berekenen van de faculteit van een getal n (n!)
def factorial(n):
if n == 0:
return 1 # basisgeval
else:
return n * factorial(n - 1) # recursieve oproep
Hier roept factorial zichzelf aan met n-1, totdat het 0 bereikt, waarna het begint met het teruggeven van waarden omhoog in de keten.
Recursie is handig voor taken die van nature worden opgesplitst in soortgelijke subtaken, zoals het doorlopen van bomen, het berekenen van Fibonacci-getallen, sorteren, enz.