Evo ti kako to moze manuelno da se uradi.
Mozes da kreiras prvo strukturu baze pomocu dinamicke liste.
Napravi glavnu listu koja ce kao elemente imati slog sa poljima:
prec = ^TRec;
TRec = record
Marka:String;
Model:String;
Boja:PBoja;
sled:prec;
end;
i ogranak svakog elementa te liste:
PBoja = ^TBoja;
TBoja = record
BojaIKol : String;
sled : pb;
end;
Prodji kroz bazu i radi sledece: ubacuj u glavnu listu marku i model samo ako vec nije u glavnoj listi a Boja ostavi na NIL.
Kada napunis glavnu listu svim markama i modelima prodji kroz nju od pocetka samo sada u bazi trazi boju i kolicinu koja odgovara toj marci i modelu ubacujuci u pomocnu listu tu boju i kolicinu i povezivajuci sada tu novoformiranu (malu) listu boja i kolicina sa glavnom listom preko Boja:PBoja.
Evo kako bi to izgledalo u memoriji racunara:
Levis 501 -------sled:prec---- Diesel Kosulja ------------------
|................................................. |
| Boja:Pboja .............................. | Boja:Pboja
| .................................................|
bela(100) ............................... plava(100)
| sled:pb ...................................| sled:pb
crvena(100).............................zuta(11)
| sled:pb
zuta(10)
Mislim da je koncept jasan ...
Posle samo prodjes kroz kompleks lista i formiras Tree u programu.
Sve sto je besmislenije, utoliko je bolje.