Strukture podataka i algoritmi
Povezane liste protiv nizova

Razmatranja performansi

Implementacije skupova pomocu nizova ce u opstem slucaju pokazati nesto bolje performanse nego implementacije pomocu povezanih listi. Razlika je, naravno, samo u konstantnom faktoru: pretrazivanje i niza i povezane liste je u osnovi O(n) operacija. Ipak, veliki broj faktora utice na neznatno bolje performanse nizova:
  1. Adresa sledeceg elementa u nizu se moze izracunati iz trenutne adrese i velicine elementa - oba podatka se cuvaju u registrima:
    (sledeca)adresa := (trenutna)adresa + velicina
    Obe adrese cak mogu da koriste isti registar. Posto nije neophodan pristup memoriji, ova se operacija odvija u jednom taktu modernih RISC procesora.
  2. Koristeci nizove, informacije se cuvaju u uzastopnim lokacijama u memoriji: ovo omogucava da se efikasno iskoriste kes sistemi modernih procesora. Deo kes memorije koji je "dobavljen" pristupom trenutnom elementu niza takodje sadrzi deo sledeceg elementa niza. Stoga nema neiskoriscenosti kesa ili moguce sirine opsega CPU<->memorija. Za razliku, kod implementacije pomocu povezanih listi:

Nazad na Hash tabele
Nazad na Sadrzaj
© John Morris, 1998. Prevod sa engleskog, Dragan Stevanovic, 2002.