Se consideră o listă liniară simplu înlănțuită, alocată dinamic, în care elementele sunt de tipul declarat mai jos:
struct nod{
int info;
nod * urm;
};
în care câmpul info memorează un număr întreg, iar câmpul urm memorează adresa următorului element al listei.
Cerinţa
Să se scrie o funcție C++ cu următorul prototip:
void adaugare(nod * & p , int x);
care adaugă valoarea x la sfârșitul listei pentru care primul element are adresa memorată în pointerul p.
Restricţii şi precizări
numele funcției va fi adaugare
dacă lista nu conține niciun element, pointerul p va avea valoarea NULL
în toate cazurile, la ieșirea din apel p va memora adresa primului element al listei
Răspunsuri la întrebare
Răspuns de
10
void adaugare (nod *&p,int x)
{nod *q,*t;
if (p==NULL)
{p=new nod;
p->info=x;
p->urm=0;
}
else
{for (q=p;q->urm!=0;q=q->urm);
t=new nod;
t->info=x;
t->urm=0;
q->urm=t;
}
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Biologie,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Chimie,
9 ani în urmă
Chimie,
9 ani în urmă