een functie die zichzelf aanroept staat bekend als een recursieve functie. En deze techniek staat bekend als recursie.

Hoe werkt recursie?

void recurse(){ ... .. ... recurse(); ... .. ...}int main(){ ... .. ... recurse(); ... .. ...}

de recursie gaat door totdat aan een bepaalde voorwaarde is voldaan om dit te voorkomen.

om oneindige recursie te voorkomen, if…else statement (of soortgelijke benadering) kan worden gebruikt waar de ene branch de recursieve call maakt, en de andere niet.,

voorbeeld: som van natuurlijke getallen met recursie

Output

Enter a positive integer:3sum = 6

aanvankelijk wordt de sum() aangeroepen vanuit de functie main() met getal doorgegeven als argument.

stel dat de waarde van n binnen sum() aanvankelijk 3 is. Tijdens de volgende functie aanroep wordt 2 doorgegeven aan de sum() functie. Dit proces gaat door tot n gelijk is aan 0.,

wanneer n gelijk is aan 0, faalt de voorwaarde if en wordt het deel else uitgevoerd om de som van gehele getallen uiteindelijk naar de functie main() te retourneren.

voor-en nadelen van recursie

recursie maakt het programma elegant. Echter, als de prestaties is van vitaal belang, gebruik lussen in plaats daarvan als recursie is meestal veel langzamer.

Dit gezegd zijnde, is recursie een belangrijk concept. Het wordt vaak gebruikt in gegevensstructuur en algoritmen., Het is bijvoorbeeld gebruikelijk om recursie te gebruiken in problemen zoals tree traversal.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *