Revision: 60856
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at November 13, 2012 21:19 by dario_kovacic
Initial Code
#include <iostream>
struct zivotinja{
int sifra;
char vrsta[50];
char naziv[50];
struct {
int d,m,g;
}datum;
float cijena;
};
struct lista{
zivotinja z;
lista *sljedeci;
};
typedef lista *elem;
lista* InitL(lista *l){
l = new lista;
lista *zadnji = new lista;
l->sljedeci = zadnji;
zadnji->sljedeci = NULL;
return l;
}
elem EndL(lista *l){
lista *tekuci= l;
while(tekuci->sljedeci)
tekuci=tekuci->sljedeci;
return tekuci;
}
elem FirstL(lista *l){
if(l == NULL) return EndL(l);
else return l->sljedeci;
}
elem NextL(elem p, lista *l){
if(p->sljedeci==NULL) return EndL(l);
return p->sljedeci;
}
elem PreviousL(elem p, lista *l){
lista *tekuci = l->sljedeci;
while(p != tekuci->sljedeci && tekuci->sljedeci!=NULL)
tekuci=tekuci->sljedeci;
return tekuci;
}
elem DeleteAllL(lista *l){
l->sljedeci = EndL(l);
}
int InsertL(zivotinja ziv, lista *p, lista *l){
lista *tekuci=p;
lista *novi=new lista;
if(p==EndL(l)){
novi->sljedeci=NULL;
tekuci->sljedeci=novi;
tekuci->z=ziv;
}
else if(p==FirstL(l)){
novi->sljedeci=tekuci;
l->sljedeci=novi;
novi->z=ziv;
}
else{
lista *prethodni=PreviousL(p,l);
novi->sljedeci=tekuci;
prethodni->sljedeci=novi;
novi->z=ziv;
}
if(tekuci->z.sifra==ziv.sifra)
return 1;
else
return 0;
}
int DeleteL(elem p, lista *l){
elem prethodni, tekuci;
tekuci = p;
if(p==FirstL(l)){
l->sljedeci = tekuci->sljedeci;
delete tekuci;
return 1;
}
else{
prethodni = PreviousL(tekuci,l);
prethodni->sljedeci = tekuci->sljedeci;
delete tekuci;
return 1;
}
return 0;
}
elem LocateL(zivotinja ziv, lista *l){
elem tekuci;
tekuci = l->sljedeci;
while(tekuci){
if(ziv.sifra!=0){
if(ziv.sifra == tekuci->z.sifra)
return tekuci;
}
tekuci = tekuci->sljedeci;
}
}
zivotinja RetrieveL(elem p, lista *l){
return p->z;
}
Initial URL
Initial Description
biblioteka sadrži implementaciju liste pomoću pokazivaÄa (strukture podataka, zadtak 1)
Initial Title
lista_pokazivac.h
Initial Tags
Initial Language
C++