Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- typedef int adresa;
- struct nod
- {
- int info;
- adresa urm;
- };
- nod L[100];
- int nrelem=0;
- adresa ocupat[1000],sf,v;
- int es()
- {
- return nrelem<1000;
- }
- void aloca(adresa & x)
- {
- adresa i=1;
- while(ocupat[i])i++;
- x=i;
- ocupat[i]=1;
- nrelem++;
- }
- void elibereaza(adresa x)
- {
- ocupat[x]=0;
- nrelem--;
- }
- void adaugare(adresa & v, int val)
- {
- int c;
- if(!v)
- {
- aloca(v);
- L[v].info=val;
- L[v].urm=0;
- sf=v;
- }
- else if(es())
- {
- aloca(c);
- L[sf].urm=c;
- L[c].info=val;
- L[c].urm=0;
- sf=c;
- }
- else cout<<"lipsa spatiu"<<endl;
- }
- void id(adresa v, int val, int val1)
- {
- adresa c,d;
- if(es())
- if (L[v].info==val)
- {
- aloca(d);
- L[d].info=val1;
- L[d].urm=v;
- v=d;
- }
- else
- {
- c=v;
- while(L[L[c].urm].info!=val)c=L[c].urm;
- aloca(d);
- L[d].info=val1;
- L[d].urm=L[c].urm;
- L[c].urm=d;
- }
- else cout<<"nu e spatiu"<<endl;
- }
- void ii(adresa & v,int val, int val1)
- {
- adresa c,d;
- if(es())
- if (L[v].info == val)
- {
- aloca (d);
- L[d].info=val1;
- L[d].urm=v;
- v=d;
- }
- else
- {
- c=v;
- while(L[L[c].urm].info!=val)c=L[c].urm;
- aloca (d);
- L[d].info=val1;
- L[d].urm=L[c].urm;
- L[c].urm=d;
- }
- else cout<<"nu e spatiu"<<endl;
- }
- void s(adresa & v, int val)
- {
- adresa c,man;
- if(L[v].info==val)
- {
- man=v;
- v=L[v].urm;
- }
- else
- {
- c=v;
- while (L[L[c].urm].info!=val) c=L[c].urm;
- man=L[c].urm;
- L[c].urm=L[man].urm;
- if(man==sf)sf=c;
- }
- elibereaza (man);
- }
- void a(adresa v)
- {
- adresa c=v;
- while(c)
- {
- cout<<L[c].info<<" ";
- c=L[c].urm;
- }
- cout<<endl;
- }
- int cautare(int x)
- {
- int p;
- while(p&&L[p].info!=x)
- p=L[p].urm;
- return (p);
- }
- int main()
- {
- int i;
- for(i=1;i<=10;i++)
- {
- adauga (v,i)
- afisare(v)
- id(v,1,15)
- afisare(v)
- id(v,10,25)
- afisare(v)
- ii(v,3,44)
- afisare(v)
- s(v,10)
- afisare(v)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement