Sunteți pe pagina 1din 2

Coada

Un alt mod de a gestiona o lista simplu inlantuita este cel corespunzator


principiului
FIFO (First In First Out), adica primul pus in lista este primul care se scoate din
lista. O lista
simplu inlantuita gestionata in acest fel se spune ca formeaza o coada.
Operatii de baza la coada

Operaiile de baz la coada sunt:


-crearea unei cozi;
-adaugarea unui nod la sfarsitul cozii;
-stergerea unui nod de la inceputul cozii;
-parcurgerea cozii pentru afiarea elementelor sale.

#include<iostream.h>
#include<conio.h>
struct coada{
int info;
coada *urm;};
coada *cap, *sf;
void creare(coada *&cap, coada *&sf, int nr){
coada *c;
if (!cap){
cap=new coada;
cap->info=nr;
cap->urm=0;
sf=cap;}
else{
c=new coada;
c->info=nr;
sf->urm=c;
c->urm=NULL;
sf=c;}
}

void stergere(coada *&cap){


coada *c;
c=cap;
cap=c->urm;
delete c;
}
void listare(coada *cap){
coada *c;
c=cap;
while(c){
cout<<c->info;
c=c->urm;}
}
void main(void){
int n,i;
cout<<"Introduceti numarul de noduri din coada n=";cin>>n;
// creare coada cu n noduri

for(i=1; i<=n; i++)


creare(cap,sf,i);
//parcurgerea cozii pentru afiarea elementelor sale
listare(cap);cout<<endl;
// stergerea unui nod de la inceputul cozii
stergere(cap);
listare(cap);
getch();
}

S-ar putea să vă placă și