/ Published in: C++
Implementacija liste pomocu pokazivaca
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
using namespace std; int sifra=1; int kursor; struct tzivotinja { int sifra; char vrsta[30],naziv[30]; float cijena; tm datum; tzivotinja *sljedeci; }; tzivotinja *lista = new tzivotinja; void initL(tzivotinja *lista){ lista->sljedeci = NULL; } int endL(tzivotinja *lista){ tzivotinja *tekuci = lista; int b=1; while(tekuci->sljedeci){ tekuci=tekuci->sljedeci; b++; } return b; } int firstL(tzivotinja *lista){ return 0; } int previousL(int p,tzivotinja *lista){ if(p == firstL(lista)) return -1; else return p-1; } tzivotinja retrieveL(int p, tzivotinja *lista){ tzivotinja *tekuci = lista->sljedeci; for(int i=0;i<p;i++) tekuci = tekuci->sljedeci; return *tekuci; } void updateL(tzivotinja element,int p, tzivotinja* lista) { tzivotinja *tekuci=lista->sljedeci; for(int i=0;i<p;i++) tekuci=tekuci->sljedeci; tzivotinja *pom = tekuci->sljedeci; *tekuci = element; tekuci->sljedeci = pom; } int insertL(tzivotinja *novi, int p, tzivotinja *lista){ tzivotinja *tekuci = lista; for(int i=1;i<p;i++) tekuci = tekuci->sljedeci; novi->sljedeci = tekuci->sljedeci; tekuci->sljedeci = novi; if((tekuci->sljedeci)->sifra == novi->sifra) return 1; else return 0; } void deleteL(int p, tzivotinja *lista){ tzivotinja *tekuci = lista->sljedeci; tzivotinja *prethodni = lista; for(int i=0;i<p;i++){ tekuci = tekuci->sljedeci; prethodni = prethodni->sljedeci; } prethodni->sljedeci = tekuci->sljedeci; delete tekuci; }