Recursivitatea este o tehnică utilizată în programare, care constă în apelarea unei funcții de către aceeași funcție. Aceasta este o metodă puternică de a rezolva problemele, dar poate duce la probleme de performanță, în cazul unor implementări neoptimizate. Funcția recursivă trebuie să aibă o condiție de oprire, pentru a evita un ciclu infinit de apeluri.