Recursie
Recursie is een proces in computerprogrammering waarbij een functie zichzelf aanroept als subroutine. Dit concept is nuttig bij een probleem dat kan worden opgelost door het op te delen in kleinere versies van hetzelfde probleem. Elke keer dat een recursieve functie wordt uitgevoerd, geeft deze zichzelf de opdracht opnieuw te worden uitgevoerd. Dit gaat door totdat aan een bepaalde voorwaarde wordt voldaan. Functies waarin recursie wordt toegepast, worden recursieve functies genoemd.
Een softwareontwikkelaar die een recursieve functie bouwt, moet het basisgeval bepalen. Het basisgeval is het deel van het probleem waarvan de oplossing bekend is, zodat het probleem zonder verdere recursie wordt opgelost. Een recursieve functie doorloopt stappen totdat deze het basisgeval bereikt. Op dat moment eindigt de recursie en kan het programma doorgaan met de volgende taak.
Goed toegepaste recursie is een efficiënte programmeermethode, omdat hiermee de hoeveelheid broncode die nodig is om een taak uit te voeren, wordt beperkt. Als het basisgeval echter niet is ingesteld of niet kan worden bereikt, gaat de recursie oneindig door. Eindeloze recursie wordt een oneindige lus genoemd en zorgt er uiteindelijk voor dat een programma vastloopt.
Test je kennis