74
III IV  II  I Linearne strukture podataka Nelinearne strukture podata Pretraživanje Sortiranje    A    l   g   o   r    i    t   m    i    i   s    t   r   u    k    t   u   r   e   p   o    d   a    t   a    k   a Sadržaj Sadržaj

Algoritmi Prezentacija

  • Upload
    -

  • View
    229

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 1/74

III

IV

 II

 I Linearne strukture podataka

Nelinearne strukture podata

Pretraživanje

Sortiranje

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

SadržajSadržaj

Page 2: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 2/74

UvodUvod

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t

  u  r  e

  p  o   d  a   t  a   k  a

    Algorithms + Data Structures =Programs

Dva osnovna gradivna blokaza implementaciju programskih sistema

  Struktura  podataka – opis načina

organizacije podataka

  Algoritam – opis načina obrade podataka

Page 3: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 3/74

O algoritmimaO algoritmima

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t

  u  r  e

  p  o   d  a   t  a   k  a

Osobine  jedan ili više ulaza i izlaza nedvosmislenost i ostvarljivost naredbi konačno vreme izvršavanja

Determinističko ponašanje (ali ipseudoalgoritmi

!era e"kasnosti – vremenska i

prostorna slo#enost

$ajčeš%e u pseudojeziku

&mplementacija algoritama (jezik' mašinavod

Page 4: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 4/74

O strukturama podatakaO strukturama podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t

  u  r  e

  p  o   d  a   t  a   k  a

!odelira objekte i podatke izproblema

)lementarni' primitivni tipovi

*lo#eni' struktuirani tipovi logička struktura "zička struktura

Osnovni načini struktuiranja homogeni nizovi nehomogeni zapisi

vod

Page 5: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 5/74

vod O strukturama podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t

  u  r  e

  p  o   d  a   t  a   k  a

ZapisZapis

Agregacija elemenata različitog tipa(polja

 ,retira se kao logička celina

-oristi se u implementaciji dinamičkih struktura

datoteka

Operacije obično nad poljima

Page 6: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 6/74

vod O strukturama podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t

  u  r  e

  p  o   d  a   t  a   k  a

ZapisZapis

*meštanje u memorijia kontinualna alokacija poljab vezivanje polja za početak

reči

               m a r k a

s n a g a

s n a g ag o d i n a

g o d i n am a r k a  

a 1

a 1

a )

b )

1 0 0 1 1 0 1 1 4

1 1 2 1 1 61 0 0

Page 7: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 7/74

Podele strukturaPodele struktura

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t

  u  r  e

  p  o   d  a   t  a   k  a

.o relacijama elemenata linearne nelinearne

.o mogu%nosti promene veličine statičke dinamičke

.o mestu čuvanja unutrašnje (u operativnoj

memoriji spoljašnje (datoteke

vod O strukturama podataka

Page 8: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 8/74

 vod O strukturama podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t

  u  r  e

  p  o   d  a   t  a   k  a

Memorijska reprezentacijaMemorijska reprezentacija

Sekvencijalna /izički i logički poredak isti

.ristup elementima

direktan Obično za linearne

strukturea )

b )

Page 9: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 9/74

 vod O strukturama podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t

  u  r  e

  p  o   d  a   t  a   k  a

Memorijska reprezentacijaMemorijska reprezentacija

Ulanana /izički i logički poredak

različiti

.ristup elementimaindirektan

-oristi pokazivačkimehanizam

Obično za nelinearnestrukture

Page 10: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 10/74

III

IV

 II

 I Linearne strukture podataka

Nelinearne strukture podata

Pretraživanje

Sortiranje

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t

  u  r  e

  p  o   d  a   t  a   k  a

SadržajSadržaj

Page 11: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 11/74

Linearne strukture podatakaLinearne strukture podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t

  u  r  e

  p  o   d  a   t  a   k  a

Linearna lista (a0' a1' 222' an' n 3 4

Apstraktni tip nezavisno odimplementacije

*trukturno svojstvo – jednodimenzionalnost

Operacije obilazak po poretku 022n pretra#ivanje pristup elementu

umetanje brisanje' 222

Page 12: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 12/74

Linearne strukture podatakaLinearne strukture podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t

  u  r  e

  p  o   d  a   t  a   k  a

&mplementacija sekvencijalna – niz

ulančana – ulanana

lista

Disciplina pristupa 5&/O stek 

/&/O red

Page 13: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 13/74

 5inearne strukture podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

NizoviNizovi

Niz  homogeni struktuirani tip

&ndeks – pozicija elementa u nizu

 X 6l7u8 = { X 6i8}' i = l' l + 0' 9 ' u 0' u 

Direktan pristup elementu bezograničenja

:išedimenzionalni nizovi (nizovinizova

*elekcija elementa

O eraci e

Page 14: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 14/74

 5inearne strukture podataka $izovi

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

SmeSme!tanje vektora!tanje vektora

*ekvencijalna reprezentacija'ne razdvaja se logički koncept odimplementacije

 Ai = Al + (i ls (jedan element zauzima sreči

)"kasan' direktan pristup'nee"kasno umetanje i brisanje X [ l ] X [ i ] X [ u ] 

 Al 

 Ai 

s

 X 

.redstavljanje nizova u memoriji

Page 15: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 15/74

 5inearne strukture podataka $izovi

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

SmeSme!tanje vektora!tanje vektora -ontinualno

prostorno e"kasno nee"kasan pristup

*a dopunjavanjem ( padding iskoriš%enje prostora S

u = s ;

s  e"kasniji pristup

 X [ l ] 

 X [ l + 1 ] X [ l + 2 ] 

 X [ l ] 

 X [ l + 1 ] X [ l + 2 ] 

.redstavljanje nizova u memoriji

Page 16: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 16/74

 5inearne strukture podataka $izovi

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

SmeSme!tanje vektora!tanje vektora

.akovanje k  = 0;s elemenata u jednoj reči

prostorno iskoriš%enje Su = ks ;

ks  A

i = A

l + (i l;k  

pozicija u reči (i - l) mod k 

 X [ l ] 

 X [ l + 6 ] 

 X [ l + 5 ] 

.redstavljanje nizova u memoriji

Page 17: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 17/74

 5inearne strukture podataka $izovi

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Sme!tanje matricaSme!tanje matrica

<ilj e"kasna adresna unkcija

5inearizacija po vrstama (rowmajor  po kolonama (column

major 

 X 

1

i ,  j i , 1 i , N 

M  ,  j M  , 1 M  , N 

1  j N 

1 ,  j 1 , 1 1 , N 

.redstavljanje nizova u memoriji

Page 18: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 18/74

 5inearne strukture podataka $izovi

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Sme!tanje po vrstamaSme!tanje po vrstama

 X[l 1:u1 , l 2:u2 ]

 Ai,j = A

l0,l1 + ((i  l0(u1 l1 + 0 + j  l1s 

 X[1:M,1:N]

 Ai,j = A0'0 + ((i 0N + j  0s

ne zavisi od broja vrsta

1 ,  j 1 , 1 1 , N M  , j M  , 1 M  , N . . .. . .

v r s t a 1 v r s t a i  v r s t a M

i , j i , 1 i , N 

.redstavljanje nizova u memoriji

Page 19: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 19/74

 5inearne strukture podataka $izovi .redstavljanje nizova u memoriji

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Sme!tanje po kolonamaSme!tanje po kolonama

 X[l 1:u1 , l 2:u2 ]

 Ai,j = A

l0,l1 + (( j – l1(u0 – l0 + 0 + i –l0s

 X[1:M,1:N]

 Ai,j = A0'0 + (( j 0M + i  0s 

ne zavisi od broja kolona

i , 11 , 1 M  , 1 i , j 1 , j M  , j i , N 1 , N M  , N . . .. . .

k o l o n a 1 k o l o n a  j  k o l o n a N

Page 20: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 20/74

 5inearne strukture podataka $izovi .redstavljanje nizova u memoriji

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Vi!edimenzionalni nizoviVi!edimenzionalni nizovi

 X[1:u1 , 1:u2 , ..., 1:un ]

>eneralizovano smeštanje po vrstama X[1, ..., 1, 1] X[1, ..., 1, 2] X[1, ..., 1, u

n ]

 X[1, ..., 2, 1] X[1, ..., 2, 2] X[1, ..., 2, un ]

 ...

 X[u1, ..., u

n-1, 1] X[u

1, ..., u

n-1, 2] X[u

1, ..., u

n-1, u

n ]

5eksikogaski poredak

Page 21: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 21/74

 5inearne strukture podataka $izovi .redstavljanje nizova u memoriji

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Vi!edimenzionalni nizoviVi!edimenzionalni nizovi

 Ai1,.., in = A1,..,1 + ((i1 - 1)u2u3...un + (i2 - 1) u3u4...un +…+ (i

n-1- 1)u

n + i

n - 1)s

)"kasno izračunavanje

ofse  = 4"or  j  = 0 to n do

  ofse  = ! 6 j 8 ofse  + "6 j 8 0

end#"or

 A = A0'22'0 + s # ofse &mplikacije načina smeštanja

Page 22: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 22/74

 

a ) 0

x

x

xX

b ) X

x

x

x0

c )

00

0

0X

d )

X0

0

00

5inearne strukture podataka $izovi

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Optimizacije pri sme!tanjuOptimizacije pri sme!tanju

<ilj – ušteda prostora' ali ipak e"kasanpristup

.rimer trougaone matrice

Page 23: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 23/74

 5inearne strukture podataka $izovi Optimizacije pri smestanju nizova

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

$rougaona matrica$rougaona matrica

$pr2 donja trougaona matrica X 6i' j8 = 4 , i ? j 

.rimena smeštanja po vrstama

 X 60'08  X 61'08  X 61'18  X 6@'08  X 6@'18 X 6@'@8 222

šteda u prostoru oko 4B

 Ai,j = A0'0 + (i(i 0;1 + j  0s ako je i ≥  j

Page 24: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 24/74

 

1 n + 12

X

Y

n1

X

Y

1

n n

12

a ) b )

5inearne strukture podataka $izovi Optimizacije pri smestanju nizova

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

$rougaone matrice$rougaone matrice

 X 6i' j8 = $ 6i' j +08 ako je i ≤  j C6i' j8 = 4 zai  j 

% 6i' j8 = $ 6i' j8 ako je i ≥  j % 6i' j8 = 4 za

i ? j

Page 25: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 25/74

 

0

0

0

0

9

0

0

0

0

0

0

4

0

0

0

0

0

5

0

8

0

0

0

0

0

0

0

1 1

0

0

1 5

0

0

0

0

 X  =

4

5

1 1

9

8

1 5

V

4

6

1

4

!

"

1

2

2

4

4

5

#

5inearne strukture podataka $izovi Optimizacije pri smestanju nizova

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

%etki nizovi%etki nizovi

Eelativno veliki broj nultih elemenata .amte se samo nenulti elementi – ušteda

prostora

:ektorska reprezentacija $ee"kasne operacijeF

Page 26: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 26/74

 

l i s t   i n f o i n f o i n f on e x t n e x t   n e x t  

5inearne strukture podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Ulanane listeUlanane liste

$edostaci sekvencijalne implementacije

Ulanana lista  ulančana implementacijalinearne liste

)lement liste čvor

Dinamička alokacija' pokazivačkimehanizam

Page 27: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 27/74

 5inearne strukture podataka lančane liste Osnovni pojmovi i osobine

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Vrste listaVrste lista

.o načinu povezanosti  jednostruko ulančane dvostruko ulančane

kru#ne nekru#ne

.o organizaciji ureGene neureGene 

Page 28: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 28/74

 

y  z 

 

y z 

 

 x 

 

5inearne strukture podataka lančane liste Operacije sa jednostruko ulančanim listama

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a &$*)E,A/,)E( p' & 

' = >),$OD)

in(o(' = & ne& (' = ne& ( p

ne& ( p = ' 

 &ednostruko ulanane liste &ednostruko ulanane liste

metanje iza zadatog čvora

Page 29: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 29/74

 

y  z 

 

 x  z 

 

y  

5inearne strukture podataka lančane liste Operacije sa jednostruko ulančanim listama

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

&$*)E,H)/OE)( p' & 

' = >),$OD)

ne& (' = ne& ( p

in(o(' = in(o( p

in(o( p = & 

ne& ( p = ' 

 &ednostruko ulanane liste &ednostruko ulanane liste

metanje ispred zadatog čvora

Page 30: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 30/74

 

 x 

 

z y 

 x 

 

 

5inearne strukture podataka lančane liste Operacije sa jednostruko ulančanim listama

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a D)5),)A/,)E( p

' = ne& ( p

ne& ( p = ne& ('

/E))$OD)('

 &ednostruko ulanane liste &ednostruko ulanane liste

Hrisanje iza zadatog čvora

Page 31: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 31/74

 

 x 

 

 

 

5inearne strukture podataka lančane liste Operacije sa jednostruko ulančanim listama

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a D)5),)( p

' = ne& ( p

ne& ( p =ne& ('

in(o( p =in(o('

/E))$OD)('

 &ednostruko ulanane liste &ednostruko ulanane liste

Hrisanje zadatog čvora

Page 32: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 32/74

 5inearne strukture podataka lančane liste Operacije sa jednostruko ulančanim listama

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

*)AE<I(lis ' & 

 p = lis 

'(ile  ( p  ≠  nil and (in(o( p ≠  &  do

 p = ne&  ( p

end#'(ile

return  p 

 &ednostruko ulanane liste &ednostruko ulanane liste

.retra#ivanje neureGene liste

Page 33: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 33/74

 5inearne strukture podataka lančane liste Operacije sa jednostruko ulančanim listama

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

 &ednostruko ulanane liste &ednostruko ulanane liste

*)AE<IOED(lis ' & 

 p = lis 

'(ile ( p ≠ nil and (in(o( p ? &  do

 p = ne& ( p

end#'(ile

i"   ( p  ≠  nil and (in(o( p  & 

t(en p = nil

end#i" 

return  p 

.retra#ivanje ureGene liste

Page 34: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 34/74

 

i n f o i n f o i n f on e x t n e x t   n e x t  l i s t  

5inearne strukture podataka lančane liste Operacije sa kru#nim ulančanim listama

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

)ružne liste)ružne liste

.oslednji čvor ukazuje na prvi

Omogu%uje kru#no kretanje po listi

*poljašnji pokazivač na listu ponekadukazuje naposlednji čvor

Page 35: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 35/74

 

l i s t  

y x 

l i s t  

5inearne strukture podataka lančane liste

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

&$*)E,A/,)E<( p' & ' = >),$OD)

in(o(' = & 

ne& (' = ne& ( p

ne& ( p = '

i"  (lis  = p t(enlis  = '

end#i"  

)ružne liste)ružne liste

Operacije sa kru#nim ulančanim listama

Page 36: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 36/74

 5inearne strukture podataka lančane liste

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

)ružne liste sa zaglavljem)ružne liste sa zaglavljem

l i s t  " 

a )

b )l i s t  

$a početku poseban čvor – zaglavlje

kazuje na prvi čvor

5ista nikad nije praznaF

Operacije sa kru#nim ulančanim listama

Page 37: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 37/74

 

  ! 

i n f o  r e # n e x t 

i n f o  r e # n e x t 

  ! 

5inearne strukture podataka lančane liste Operacije sa dvostruko ulančanim listama

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

*vostruko ulanane liste*vostruko ulanane liste

.okazivači na prethodnika i sledbenika 5ako kretanje u oba smera

ne& ( pre) ( p = p = pre) (ne& ( p

Page 38: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 38/74

 

 

y  z 

 

y  z 

 x 

465

21

 

5inearne strukture podataka lančane liste Operacije sa dvostruko ulančanim listama

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

&$*)E,A/,)ED( p' & 

' = >),$OD)

in(o(' = & 

r  = ne& ( p

 pre) (' = p

ne& (' = r 

ne& ( p = '

 pre) (r  = ' 

*vostruko ulanane liste*vostruko ulanane liste

metanje

Page 39: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 39/74

 

! r  

y z  x 

! r 

z  x 

 

5inearne strukture podataka lančane liste Operacije sa dvostruko ulančanim listama

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

D)5),)D( p

' = pre) ( p

r  = ne& ( p

ne& (' = r  

 pre) (r  = ' 

/E))$OD)( p

*vostruko ulanane liste*vostruko ulanane liste

Hrisanje

Page 40: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 40/74

 5inearne strukture podataka lančane liste .oreGenje ulančane i sekvencijalne reprezentacije linearnih list

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

Pore+enje nizova i listaPore+enje nizova i lista

lančana reprezentacija obično bolje koristi prostor e"kasnija za operacije umetanja'

brisanja

spajanja' 222 leksibilnost za dinamičke strukture

*ekvencijalna reprezentacija

e"kasniji pristup elementu pogodna za statičke strukture

:ektorska implementacija liste

Page 41: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 41/74

 5inearne strukture podataka lančane liste .rimene ulančanih lista

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

1l i s t  

4 4 5 6 1 12 2

1 9 4 8 ! 1 54 54

Predstavljanje retki( nizovaPredstavljanje retki( nizova

 Jednostruko ulančane liste (čvor nenultielement

5akše umetanje i brisanje

.ristup i dalje nee"kasan

.oboljšanje – kru#ne liste ulančanepo vrstama i kolonama

Page 42: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 42/74

 5inearne strukture podataka lančane liste

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

.rimene ulančanih lista

Predstavljanje retki( matricaPredstavljanje retki( matrica

1

42 1 162

914 844

1 5!5

4

5

1

2

4

5

1 2 4 5 6 !

Page 43: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 43/74

 5inearne strukture podataka lančane liste .rimene ulančanih lista

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

Predstavljanje skupovaPredstavljanje skupova

:ektorska realizacija prostorna nee"kasnost e"kasne operacije

(unija' presek' razlika' pripadnost

lančana implementacija čvor element skupa prostorno e"kasnije

manje e"kasne operacije(za ureGene liste – O(n'za neureGene liste – O(n1

Page 44: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 44/74

 5inearne strukture podataka lančane liste .rimene ulančanih lista

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

Predstavljanje polinomaPredstavljanje polinoma

 Jednostruko ulančane kru#ne liste sazaglavljem

$pr2 @ & 0 – K & L + 1 &   M

Ako su liste ureGene po vrednosti poljaeksponenta'e"kasnost operacija ve%a

& e x & & &e x e x e x n e x t  n e x t  n e x t  n e x t  

1 5 $ 8 ! 2 1 $ 6 0

Page 45: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 45/74

 5inearne strukture podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

StekoviStekovi 5inearna lista sa 5&/O disciplinom pristupa

 Jedan pristupni kraj – vrh steka

Dinamička' homogena struktura

t o

 A ' % ( ) 

*

t o

 A '

*

t o p

 A ' ,

% ( ) 

a )

b )

c )

Page 46: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 46/74

 5inearne strukture podataka *tekovi &mplementacija steka i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

Sekvencijalna reprezentacijaSekvencijalna reprezentacija $iz S607n8

.okazivač steka op6S8

*adr#aj S608' 222' S6op6S88

t o

6 5 9 1

t o

6 5 9 1 2

t o

6 5 9 1 2

a ) b )

c )

Page 47: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 47/74

 5inearne strukture podataka *tekovi &mplementacija steka i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

Operacije sa stekomOperacije sa stekom

*,A<-)!.,N(Si"  (op6S8 = 4 t(en

return trueelse

return alseend#i"  

.*I(S' & i"  (op6S8 = n t(en

)EEOE(OveroPelse

op6S8 = op6S8 + 0S6op6S88 = & 

end#i"  

metanje.rovera da li je prazan

Page 48: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 48/74

 5inearne strukture podataka *tekovi &mplementacija steka i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

Operacije sa stekomOperacije sa stekom

.O.(Si"  (op6S8 = 4 t(en

return underoPelse

 &  = S6op6S88op6S8 = op6S8 –

0

return  & end#i"  

 ,O.(Si"  (op6S8 = 4 t(en

return underoPelse

return S6op6S88end#i"  

klanjanje Qitanje bezuklanjanja

Page 49: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 49/74

 5inearne strukture podataka *tekovi &mplementacija steka i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

Implementacija dva stekaImplementacija dva steka Eastu jedan prema drugom

Eealokacija prostora izmeGu stekova

slov prekoračenja op618 = op608 +0

t o % 1 &* % 1 &

* % 1 &

* % 2 &

* % 2 &

t o % 2 &

t o % 2 &t o % 1 &

- 1

- 1

- 2

- 2

a )

b )

Page 50: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 50/74

 5inearne strukture podataka *tekovi &mplementacija steka i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

Implementacija vi!e stekovaImplementacija vi!e stekova

t o % 1 & t o % 2 & t o % & t o % 4 & t o % 5 &* % 1 & * % 2 & * % & * % 4 & * % 5 & * % 6 &

* % 1 &

t o % 1 & t o % 5 &t o % 4 &t o % &t o % 2 &

* % 2 & * % & * % 4 & * % 5 &

t o % 1 & t o % 5 &t o % 4 &t o % &t o % 2 &

* % 2 & * % & * % 4 & * % 5 &* % 1 &

- 1 - 2 - - 4 - 5

- 5

- 5

- 4

- 4

-

-

- 2

- 2

b )

c )

a )

- 1

- 1

Page 51: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 51/74

 5inearne strukture podataka *tekovi &mplementacija steka i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

Implementacija vi!e stekovaImplementacija vi!e stekova

.*I!(i' & i"  (op6i 8 = *6i + 08 t(en

)EEOE(OveroP

elseop6i 8 = op6i 8 + 0+ 6op6i 88 = & 

end R i"  

.O.!(ii"  (op6i8 = *6i8 t(en

return underoP

else &  = + 6op6i88op6i8 = op6i8 – 0return  & 

end R i"  

klanjanjemetanje

.oboljšanje - arwick ov algoritam

Page 52: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 52/74

 5inearne strukture podataka *tekovi &mplementacija steka i operacije sa njim

 x y s

y sa )

b )

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

Ulanana reprezentacijaUlanana reprezentacijastekasteka

.*I5(s' &  p = >),$OD)in(o( p = & ne& ( p = ss = p 

.O.5(si"  (s = nil t(en

return underoPelse

 p = ss = ne& ( p

 &  = in(o( p/E))$OD)( preturn  & 

end R i"  

Page 53: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 53/74

 5inearne strukture podataka *tekovi

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

O,rada aritmetiki( izrazaO,rada aritmetiki( izraza

&n"ksna notacija (npr2 A+H prirodna i uobičajena grupisanje operanada uz operatore

uz pomo% zagrada (npr2 (A+HS<

i prioriteta (npr2 A+HS< nepogodno za prevodioca

(zahteva više skeniranja

.re"ksna (poljska notacija (npr2 +AH .ost"ksna (inverzna poljska notacija (npr2

AH+

.rimene stekova

Page 54: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 54/74

Page 55: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 55/74

 5inearne strukture podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k

   t  u  r  e

  p  o   d  a   t  a   k  a

IzraunavanjeIzraunavanje post-ksnogpost-ksnogizrazaizraza):A5)C.( pos& 

&$&,R*,A<-(S' n'(ile (notRendRo pos&  do

 &  = &$.,( pos& i"  ( &  = operand t(en

.*I(S' & else i"  ( &  = unRop t(en

oprnd = .O.(Sre  = &  oprnd.*I(S' re 

else i"  ( &  = binRop t(enoprnd1 = .O.(Soprnd0 = .O.(Sre  = oprnd0 &  

oprnd1.*I(S' re 

end R i" end R '(ile

re  = .O.(Si"  (*,A<-)!.,N(S t(en

return re else

)EEOE($epravilanizrazend R i"  

*tekovi .rimene stekova

Page 56: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 56/74

 5inearne strukture podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r

  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

)onverzija in-ks)onverzija in-ks uu post-kspost-ks&$1.O*,(in& ' pos& &$&,*,A<-(S' nrank  = 4

ne&  = &$.,(in& '(ile (ne&  do

i"  (ne&  = operand t(enO,.,(ne& ' pos& rank  = rank  + 0

else'(ile  (not(*,A<-)!.,N(S and (&.E(ne& ≤*.E(,O.(S

do &  = .O.(SO,.,( & ' pos& rank  = rank  + E( & i"  (rank  < 0 t(en

)EEOE($epravilan izrazend#i" 

end#'(ile

i"  (*,A<-)!.,N(S or (ne&  ≠ TU t(en.*I(S' ne& 

else &  = .O.(S

end R i" end R i" ne&  = &$.,(in& 

end R '(ile*tekovi .rimene stekova

Page 57: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 57/74

 5inearne strukture podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

O,rada aritmetiki(O,rada aritmetiki(izrazaizraza'(ile (not(*,A<-)!.,N(S do

 &  = .O.(SO,.,( & ' pos& rank  = rank  + E( & 

end R '(ilei"  (rank  ≠ 0 t(en

)EEOE($epravilan izrazend R i"  

operator

ipr spr %

./ 0 1 1 02

3/ 4 5 5 026 7 8 02

9 : ; 0

< 2 0 0

*tekovi .rimene stekova

Page 58: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 58/74

 5inearne strukture podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

=enerisanje koda=enerisanje koda

0A mašina

Vablon za O0+O1

02 5OAD O012 ADD O1

@2 *,OE) ,0

Algoritam

operand na stek

operator7

O1' pa O0 sa steka

kod po šablonuza dati operator

meGurezultat na stek

*tekovi .rimene stekova

Page 59: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 59/74

 5inearne strukture podataka

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

O,rada aritmetiki(O,rada aritmetiki(izrazaizraza

.*I A.*I H

.*I <!5ADD

.*I DD&:

5OAD H!5 <ADD AD&: D

*,OE) ,0 

4A mašina0A mašina(optimizovan

o

in"W: (A+HS<;D post"W7 AH<S+D;

5OAD H!5 <*,OE) ,05OAD AADD ,0

*,OE) ,15OAD ,1D&: D*,OE) ,@

0A mašina

*tekovi .rimene stekova

Page 60: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 60/74

 5inearne strukture podataka Eedovi De"nicija reda

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

%edovi%edovi

f r o n t  

 A'% () 

r e a r  

 ," 

f r o n t  

 A'% () 

r e a r  

 ," . 

a )

b )

5inearna lista sa /&/O disciplinom pristupa Dva pristupna kraja – čelo i začelje

Dinamička' homogena struktura

Page 61: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 61/74

 5inearne strukture podataka Eedovi &mplementacija reda i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Sekvencijalna reprezentacijaSekvencijalna reprezentacijaredareda

r e a r  

f r o n t  

 A '

'

r e a r  

f r o n t  

f r o n t r e a r  

f r o n t  

% (

r e a r  

)  '

r e a r  

) /

a )

b )

c )

d 0

e 0

f 0

$iz !607n8

.okazivači (ron  i rear 

Page 62: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 62/74

 5inearne strukture podataka Eedovi &mplementacija reda i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Sekvencijalna reprezentacijaSekvencijalna reprezentacijaredareda

% 1 & % n &

% 1 & % n &

f r o n t r e a r 0

-ru#ni baer

/[1] i /[n]  logički susedne

Page 63: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 63/74

 5inearne strukture podataka Eedovi &mplementacija reda i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Sekvencijalna reprezentacijaSekvencijalna reprezentacijaredareda

f r o n t r e a r  

f r o n t  

r e a r  

f r o n t  

r e a r  

r e a r  

f r o n t  

a ) b )

d )c )

Page 64: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 64/74

 5inearne strukture podataka Eedovi &mplementacija reda i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

&$*)E,(/' & 

rear 6/8 = rear 6/8 mod n +0

i"   ((ron 6/8 = rear 6/8t(en

)EEOE(OveroP

else

/6rear 6/88 = & i"  ((ron 6/8 = 4 t(en

(ron 6/8 = 0

end#i" 

end#i"  

Operacije sa redomOperacije sa redom

metanje

Page 65: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 65/74

 5inearne strukture podataka Eedovi &mplementacija reda i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Operacije sa redomOperacije sa redom

f r o n t  

2 0

r e a r  

f r o n t  

8 5 12 0

r e a r  

f r o n t  

8 5 12 0

r e a r  

a )

b )

c )

Page 66: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 66/74

 5inearne strukture podataka Eedovi &mplementacija reda i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

D)5),)(/

i"  ((ron 6/8 = 4 t(en

return underoP

else

W = /6(ron 6/88

i"  ((ron 6/8 = rear 6/8 t(en

(ron 6/8 = rear 6/8 = 4

else

(ron 6/

8 =(ron 

6/

8 modn + 0

end R i" 

return  & 

end R i"  

Operacije sa redomOperacije sa redom

X)))!.,N(/

i"  ((ron 6/8 = 4 t(en

return true

else

return alse

end R i"  

Hrisanje

.rovera

l i ij

Page 67: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 67/74

 5inearne strukture podataka Eedovi &mplementacija reda i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

>lternativna reprezentacija>lternativna reprezentacija

f r o n t  

r e a r  

f r o n t  

r e a r   % 0 & % n $ 1 &

$iz !607n-18.razan red (ron   =rear 

O ij d

Page 68: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 68/74

 5inearne strukture podataka Eedovi &mplementacija reda i operacije sa njim

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

X)))!.,N4(/

i"   ((ron 6/8 = rear 6/8t(en

return true

else

return alse

end R i"  

Operacije sa redomOperacije sa redom

D)5),)R4(/

i"  ((ron 6/8 = rear 6/8 t(en

return underoP

else

(ron 6/8  = ((ron 6/8  + 0mod n return /6(ron 6/88

end R i"  

Hrisanje.rovera

O ij d

Page 69: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 69/74

 5inearne strukture podataka Eedovi

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

&$*)E,R4(/' & 

rear 6/8 = (rear 6/8  + 0

mod n

i"   ((ron 6/8 = rear 6/8t(en

)EEOE(overoP

else

/6rear 6/88 = & 

end R i"  

Operacije sa redomOperacije sa redom

metanje

&mplementacija reda i operacije sa njim

i d* t i d

Page 70: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 70/74

 5inearne strukture podataka Eedovi Dvostrani red

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

*vostrani red*vostrani red

a )

b )

c )

a metanje i brisanje na oba krajab metanje samo na jednom kraju

c Hrisanje samo na jednom kraju

Ul ij dUl t ij d

Page 71: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 71/74

 5inearne strukture podataka Eedovi &mplementacija reda i operacije sa njim

! y  z  # x 

r e a r  

y  z 

r e a r  

! z  # x 

r e a r  

c )

b )

a )

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

Ulanana reprezentacija redaUlanana reprezentacija reda

 Jednostruko ulančana lista (rear   na poslednjičvor

!o#e i kru#na lista

Ul ij dUl t ij d

Page 72: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 72/74

 5inearne strukture podataka Eedovi

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

&$*)E,5('' & 

 p = >),$OD)in(o( p = & 

ne& ( p = nil

i"   (rear 6'8 = nil

t(en' = p

else

ne& (rear 6'8 = p

end R i" rear 6'8 = p 

Ulanana reprezentacija redaUlanana reprezentacija redaD)5),)5('

i"  (' = nil t(enreturn

underoP

else

 p =

'

 &  = in(o( p

' = ne& ( p

i"  (' = nil t(en

rear 6'8 = nilend R i" 

/E))$OD)( p

return  & 

end R i"  &mplementacija reda i operacije sa njim

P i it t i dP i it t i d

Page 73: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 73/74

Prioritetni redPrioritetni red

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

.oredak brisanja elemenata zavisi od prioriea –sadr#aja elementa

Eastu%i i opadaju%i prioritetni red .oredak umetanja mo#e biti od značaja

samo kod elemenata sa isitim prioritetom

:iše implementacija različite e"kasnosti

vod

P i it t i dP i it t i d

Page 74: Algoritmi Prezentacija

7/23/2019 Algoritmi Prezentacija

http://slidepdf.com/reader/full/algoritmi-prezentacija 74/74

   A   l  g  o  r   i   t  m   i   i  s   t  r  u   k   t  u  r  e

  p  o   d  a   t  a   k  a

.X&$*)E,( p'' & 

' = nil

 p = p'

'(ile  ( p ≠nil and ( &  ≥  in(o( pdo

' = p p = ne& ( p

end R '(ile

i"  (' = nil t(en

.*I5( p'' & else

&$*)E,A/,)E('' & 

end i"

Prioritetni redPrioritetni red