/ Published in: C++
U ovoj biblioteci su definirane standardne funkcije za operacije nad listom (FirstL, EndL, NextL, PreviousL, LocateL, InsertL, DeleteL, RetrieveL, DeleteAll i InitL). Te se funkcije pozivaju u glavnom programu po potrebi. Koristi se polje pomoću kojeg se implementira tzv. vezana lista.
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
struct List { podaci value[1000]; int cursor; }; typedef List Lista; typedef int element; element FirstL(Lista *L) { return 0; } element EndL(Lista *L) { return L->cursor; } element NextL(element P, Lista *L) { return P+1; } element PreviousL(element P, Lista *L) { return P-1; } element LocateL(podaci X, Lista *L) { int i = 0; while (i < L->cursor) { if (L->value[i].sifra == X.sifra) { return i; i++; } } } bool InsertL(podaci X, element P, Lista *L) { if (L->cursor == 1000) { return false; } for (int i = L->cursor-1; i >= P; i--) { L->value[i+1] = L->value[i]; } L->value[P] = X; L->cursor += 1; return true; } void DeleteL(element P, Lista *L) { for (int i = P; i < L->cursor; i++) { L->value[i] = L->value[i+1]; } L->cursor -= 1; } podaci RetrieveL(element P, Lista *L) { return L->value[P]; } void DeleteAll(Lista *L){ L->cursor = 0; } void InitL(Lista *L) { L->cursor = 0; }