100 likes | 207 Views
Inserarea unui element î ntr -o list ă. Inserarea unui nou element se poate face: La î nceput . La sf â r ș it . Î n interiorul listei : - î nainte de nodul cu valoare x - dup ă nodul cu valoare x - pe pozi ț ia k. Inserarea nodului cu valoarea y.
E N D
Inserareaunuinou element se poate face: • La început. • La sfârșit. • În interiorullistei:-înaintede nodul cu valoare x -dupănodul cu valoare x -pepozițiak.
Inserareanodului cu valoarea y La începutullistei La sfârșitullistei Void inserare(int y){ nod *nou; nou=new nod; nou=prim; while(nou!=NULL) nou=nou->urm; nou->info=y; nou->urm=NULL;} Void inserare(int y){ nod *nou; nou=new nod; nou->info=y; nou->urm=prim; prim=nou;}
Inserareanodului cu valoarea y înainteanodului cu valoarea x Se parcurgelistaîncepandde la primul nod până cândajungenodul precedent celui cu valoarea x. Alocăm spațiulde memorienouluinod,dupăcare refacemlegăturadintrenodul precedent șinoul nod.
Inserareanodului cu valoarea y înainteanodului cu valoarea x Void inserare(intx,int y){ nod *p,*nou; if(prim->info==x){ nou=new nod; nou->info=y; nou->urm=prim; prim=nou;} else{p=prim; while(p->urm->info!=x) p=p->urm; nou=new nod; nou->info=y; nou->urm=p->urm; p->urm=nou;} }
Inserareanodului cu valoarea y dupănodul cu valoarea x Se parcurgelistaincepand de la primul nod panacandajungem la nodul cu valoarea x. Alocamspatiul de memorienouluinod,dupa care refacemlegaturadintrenodulcu valoarea x sinoul nod.
Inserareanodului cu valoarea y dupănodul cu valoarea x Void inserare(intx,int y){ nod *p,*nou; if(prim->info==x){ nou=new nod; nou->info=y; nou->urm=prim; prim=nou;} else{p=prim; while(p->urm->info!=x) p=p->urm; p=p->urm; nou=new nod; nou->info=y; nou->urm=p->urm; p->urm=nou;} }
Inserareanodului cu valoarea y pepozițiak Se parcurgelistaîncepandde la primul nod până cândajungem la pozițiak-1. Alocăm spațiulde memorienouluinod,dupăcare refacemlegăturadintrenodulde pepozițiak-1 sinoul nod.
Inserareanodului cu valoarea y pepozițiak Void inserare(intk,int y){ nod *p,*nou; if(k==1){ nou=new nod; nou->info=y; nou->urm=prim; prim=nou;} else{p=prim; while(k!=2) {p=p->urm;k--;} nou=new nod; nou->info=y; nou->urm=p->urm; p->urm=nou;} }