Osnovi programiranja i programski jezici
Osnovi programiranja i programski jezici
Osnovi programiranja i programski jezici
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Lista (a, lista (c, prazno)).<br />
LISTA<br />
A<br />
LISTA<br />
B<br />
C<br />
LISTA<br />
LISTA<br />
PRAZNO<br />
Eksplicitnim pretstavljanjem liste kao binarne strukture lista brzo postaje nepregledna.<br />
Zato je u PROLOG-u uvedena posebna notacija za tu strukturu. Prema toj notaciji<br />
nepraznu listu pretstavljamo navođenjem njenih elemenata zatvorenih u uglaste<br />
zagrade, dok je prazna lista pretstavljena simbolom “[]”.<br />
U listi [a, b, c] u PROLOG-u a je glava liste, a [b, c] je rep liste.<br />
Operacije sa listama su:<br />
• provera pripada li neki element listi,<br />
• provera pripadanja jedne liste drugoj,<br />
• izdvajanje iz date liste neku drugu listu koja sadrži iste elemente ali u<br />
obrnutom redosledu,<br />
• sortiranje liste,<br />
• upis u listu,<br />
• brisanje liste,<br />
• brisanje jednog elementa date liste,<br />
BINARNO STABLO<br />
Binarno stablo pretstavljamo strukturom sledećeg oblika stabla (Element, Levo,<br />
Desno). Pri tome je drugi argument levo podstablo čvora. Prazno stablo možemo<br />
označiti praznim simbolom različitim od ostalih simbola koji već imaju neko posebno<br />
zaduženje.<br />
Dužinu najdužeg lanca u stablu nazivamo i dubinom stabla.<br />
Dubina praznog stabla je 0, dužina stabla koji ima samo jedan koren je 1.<br />
OSNOVNE OPERACIJE SA BINARNIM STABLOM<br />
Element jeste element binarnog stabla ako je:<br />
• koren tog stabla,<br />
• element njegovog levog podstabla,<br />
• element njegovog desnog podstabla.<br />
Brisanje elementa binarnog sistema:<br />
• element koji se briše je lista stabla, to jest oba njegova potomka su<br />
prazna stabla, obrisani element zamenjujemo praznim stablom,<br />
• element koji se briše ima samo jedno neprazno podstablo, neprazno<br />
podstablo dolazi na mesto stabla čiji je koren izbrisan,<br />
• oba podstabla elementa koji se briše neprazna su,<br />
124