Documente Academic
Documente Profesional
Documente Cultură
Structuri de date
Tema: Functia
recursiva
Controlat de:
Sprncean Veaceaslav
Chiinu 2017
Structuri de date:
Recursivitate este proprietatea functiilor de a se autoapela. Toate instructiunile din
program se executa de cate ori este apelata functia.Orice functie recursiva trebuie
sa contina o cinditie de oprire respectiv,de continuare.
La fiecare reapel al functiei se executa aceeas segventa de instructiuni.La fiecare
reapel,in zona de stiva a memoriei:
-se ocupa un nivel nou
-se memoreaza valoarea parametrilorformali transmisi prin valoare
-adresa parametrilor formali transmisi prin referinta
-adresa de revenire
-variabilele cu valorile din momentul respectiv
Pentru fiecare apel s-a salvat in stiva un nivel,apoi pentru fiecare dintre aceste
apeluri se executa instructiunile ramase in functie cu valoarea datelor din varful
stivei(atentie!vor fi in ordine inversa introducerii lor in stiva).
Recursivitatea s-a impus in programare, odata cu aparitia unor limbaje de nivel
inalt, ce permit scrierea de module ce se autoapeleaza (PASCAL, LISP, ADA, ALGOL,
C sunt limbaje recursive, spre deosebire de FORTRAN,BASIC,COBOL, nerecursive).