Return to Snippet

Revision: 60675
at November 12, 2012 06:22 by fijelicic1


Initial Code
struct zivotinja { 
    int sifra;
    char naziv[50];
    char vrsta[50];
    int d,m,y;
    
};

struct lista {
    zivotinja vrijednost;
    lista*sljedeci;
};

typedef lista list;
typedef lista*element;

element FirstL(list*L) {
    return L;
}

element NextL(element p,list*L) {
    return p->sljedeci;
}

element EndL(list*L) {
    element start;
    start=FirstL(L);
    while (start->sljedeci!=NULL) {
        start=NextL(start,L);
    }
    return start;
}



element PreviousL(element p,list*L) {
    element start;
    start=FirstL(L);
    while(start->sljedeci!=p) {
        start=start->sljedeci;
    }
    return start;
}

element LocateL(zivotinja x,list*L) {
    element start;
    start=FirstL(L); 
    while (start->sljedeci->vrijednost.sifra!=x.sifra && start != EndL(L) ) {
        start=NextL(start,L);
    }
    return start;
}

void InsertL(zivotinja x,element p,list*L) {
    element novi;
    novi=new list;
    novi->vrijednost=x;

    novi->sljedeci=p->sljedeci;
    p->sljedeci=novi;
}

void DeleteL(element p,list*L) {
    element za_brisanje;
    za_brisanje=p->sljedeci;
    p->sljedeci=p->sljedeci->sljedeci;
    delete za_brisanje;
}

void DeleteAllL(list*L) {
    element za_brisanje;

    while(L->sljedeci!=NULL) {
        za_brisanje=L->sljedeci;
        L->sljedeci=L->sljedeci->sljedeci;
        delete za_brisanje;
    }

}

zivotinja RetrieveL(element p,list*L) {
    return p->sljedeci->vrijednost;
}

void InitL(list*L) {
    L->sljedeci=NULL;
}

Initial URL

                                

Initial Description
implementacija pomoću pokazivača

Initial Title
implementacija pomoću pokazivača

Initial Tags

                                

Initial Language
C++