adaugarea unui nod in interiorul listei

10
unui nod in interiorul listei a.Dupa nodul cu adresa q b.Inainte de nodul cu adresa q

Upload: cristina-constantin

Post on 16-Jan-2016

2 views

Category:

Documents


0 download

DESCRIPTION

informaticamate-info liceuAdaugarea Unui Nod in Interiorul Listei

TRANSCRIPT

Page 1: Adaugarea Unui Nod in Interiorul Listei

Adaugarea unui nod in interiorul listei

a.Dupa nodul cu adresa q

b.Inainte de nodul cu adresa q

Page 2: Adaugarea Unui Nod in Interiorul Listei

Adaugarea in interiorul listei dupa nodul cu adresa q

Pasii algoritmului sunt:

PAS 1: Se cere alocarea de memorie pentru nodul p.

prim q->urm ultim info urm info urm info urm info NULL

q

p

Page 3: Adaugarea Unui Nod in Interiorul Listei

PAS 2: Se scrie informatia in nodul p

prim q->urm ultim info urm info urm info urm info NULL

q

p info urm

Page 4: Adaugarea Unui Nod in Interiorul Listei

PAS 3: Nodul p se leaga de succesorul nodului q

prim q->urm ultim info urm info urm info urm info NULL

q

p info urm

Page 5: Adaugarea Unui Nod in Interiorul Listei

PAS 4: Nodul q se leaga de nodul p adaugat

prim q->urm ultim info urm info urm info urm info NULL

q

p info urm

Page 6: Adaugarea Unui Nod in Interiorul Listei

PAS 5: Se rupe legatura veche dintre noduri

prim q->urm ultim info urm info urm info urm info NULL

q

p info urm

Page 7: Adaugarea Unui Nod in Interiorul Listei

PAS 6: Daca nodul q a fost ultimul nod,nodul p adaugat devine nodul ultim

prim q->urm ultim info urm info urm info urm info NULL

q p

Page 8: Adaugarea Unui Nod in Interiorul Listei

Forma finala a schemei

prim ultim

info urm info urm info urm info urm info NULL

q p

Page 9: Adaugarea Unui Nod in Interiorul Listei

Implementarea algoritmului:

void adauga_dupa(nod *q,nod*&ultim)

{nod *p=new nod;

p->info=x;

p->urm=q->urm;

q->urm=p;

if(p->urm==NULL)

ultim=p;}

Page 10: Adaugarea Unui Nod in Interiorul Listei

Proiect realizat

de

CristinaConstatin

Profesor coordonator:Nicoleta Popazu