Implementarea Listelor
folosind Alocarea Inlantuita
In loc sa pastram o lista liniara in locatii succesive de memorie se poate folosi o
schema mult mai flexibila, in care fiecare NOD este legat de urmatorul NOD al listei prin
campul "urm" al listei, unde 'p' este o variabila pointer care indica primul NOD.
Exista posibilitatea de a folosi o variabila de tip NOD, in care campul urm indica
primul NOD efectiv al listei, iar celelalte campuri, care ar contine informatia propriu-zisa, ar
ramane neasignate.
Pointerul p va indica in aceasta situatie, acest NOD fictiv cap de lista.
Utilizarea acestui NOD de inceput simplifica in anumite situatii prelucrarea listelor
inlantuite.
struct NOD
{
int cheie;
char info[10];
struct NOD *urm;
};
typedef struct NOD Tnod;
Definim si tipul ref ca fiind tipul pointer la nodurile listei:
typedef Tnod *ref;
ref p; /* retine adresa primului NOD al listei */