4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4....

87
XI dvoqas veжbi dr Vladimir Balti 4. Stabla

Transcript of 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4....

Page 1: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

XI dvoqas veжbi

dr Vladimir Balti�

4. Stabla

Page 2: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Teorijski uvod

Page 3: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Teorijski uvod

Definicija 5.7.1. Stablo je povezan grafbez kontura.

Page 4: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Definicija 5.7.1. Stablo je povezan grafbez kontura.

Primer 5.7.1. Sva stabla sa 65 qvorova:

Page 5: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

T. 5.7.1. Neka je Γ neorijentisan graf sa n

qvorova. Slede�i iskazi su ekvivalentni:

1◦ Γ je povezan graf koji ne sadrжi nijednukonturu.

2◦ Γ je povezan graf sa m = n − 1 grana.

3◦ Γ nema konture i ima m = n − 1 grana.

4◦ Γ je min. povezan graf.

5◦ Γ je maks. graf koji ne sadrжi konture.

6◦ Svaka dva qvora u Γ su povezanataqno jednim elementarnim putem i G nesadrжi petƩe.

Page 6: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Definicija. Dijametar grafa G = (V, E) jedat sa D(G) = max

u,v∈VdG(u, v).

Ekscentricitet qvora u je εG(u) = maxv∈V

dG(u, v).

Radijus grafa G je r(G) = minv∈V

εG(v).

Svi qvorovi v grafa za koje je εG(v) = r(G)obrazuju centar grafa.

Teorema. Centar stabla se sastoji ili odjednog qvora, ili od dva susedna qvora.

Page 7: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

U svakom koraku izbacujemo listove sa svegranama koje vode do Ƭih.

Page 8: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

U svakom koraku izbacujemo listove sa svegranama koje vode do Ƭih.

Page 9: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

U svakom koraku izbacujemo listove sa svegranama koje vode do Ƭih.

Page 10: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

U svakom koraku izbacujemo listove sa svegranama koje vode do Ƭih.

Page 11: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

U svakom koraku izbacujemo listove sa svegranama koje vode do Ƭih.

Page 12: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Korenska stabla

Page 13: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.
Page 14: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.
Page 15: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.
Page 16: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.
Page 17: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.
Page 18: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.
Page 19: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.
Page 20: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.
Page 21: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Definicija 5.8.1. Korensko stablo jeure�en par RT = (T, r), gde je T stablo,a r Ƭegov qvor, koji se naziva koren stabla.

Page 22: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Definicija 5.8.1. Korensko stablo jeure�en par RT = (T, r), gde je T stablo,a r Ƭegov qvor, koji se naziva koren stabla.

Definicija 5.8.2. Nivo qvora v, n(v),korenskog stabla RT = (T, r) je duжina elem.puta u stablu T od korena r do qvora v.Najve�i nivo qvora u RT se naziva visinakorenskog stabla RT i oznaqava se sa h.

Page 23: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Definicija 5.8.2. Nivo qvora v, n(v),korenskog stabla RT = (T, r) je duжina elem.puta u stablu T od korena r do qvora v.Najve�i nivo qvora u RT se naziva visinakorenskog stabla RT i oznaqava se sa h.

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

Page 24: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

Definicija 5.8.3. Neka je RT = (T, r)korensko stablo sa skupom qvorova V .

Svaki qvor iz V koji nema decu naziva se liststabla RT . Svaki qvor iz V , koji nije list,zove se unutraxƬi qvor stabla RT .

Page 25: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

Definicija 5.8.4. Korensko stablo jebinarno stablo ako svaki Ƭegov un. qvor imanajvixe 2 deteta.

Striktno binarno stablo je bin. stablo qijisvaki un. qvor ima taqno 2 deteta.

Potpuno binarno stablo je striktno bin. st.kod koga svi listovi imaju isti nivo.

Page 26: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Definicija 5.8.4. Korensko stablo jebinarno stablo ako svaki Ƭegov un. qvor imanajvixe 2 deteta.

Striktno binarno stablo je bin. stablo qijisvaki un. qvor ima taqno 2 deteta.

Potpuno binarno stablo je striktno bin. st.kod koga svi listovi imaju isti nivo.

Page 27: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Definicija 5.8.5. Balansirano korenskostablo je korensko stablo u kome se nivoibilo koja dva Ƭegova lista razlikuju najvixeza 1, tj. oni su ili h ili h − 1.

Page 28: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Primer 5.9.4. Neka je slovo a kodirano sa10, b sa 101, e sa 11, m sa 1011 i n sa 110.Dekodirati niz bitova 1011110.

Page 29: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Primer 5.9.4. Neka je slovo a kodirano sa10, b sa 101, e sa 11, m sa 1011 i n sa 110.Dekodirati niz bitova 1011110.

RexeƬe. Da li �e niz bitova 1011110 pred-stavƩati req bea (101|11|10) ili mn (1011|110)ili aen (10|11|110)? Ne moжemo odrediti!

Page 30: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Primer 5.9.4. Neka je slovo a kodirano sa10, b sa 101, e sa 11, m sa 1011 i n sa 110.Dekodirati niz bitova 1011110.

RexeƬe. Da li �e niz bitova 1011110 pred-stavƩati req bea (101|11|10) ili mn (1011|110)ili aen (10|11|110)? Ne moжemo odrediti!

Za jednoznaqno dekodiraƬe dovoƩno je dase svaki od ovih kodova ne sadrжi ni u jednomdrugom kodu kao Ƭegov poqetni podniz.

Skup kodova koji zadovoƩava ovaj uslovzove se prefiksni kod.

Page 31: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Zadaci

Page 32: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

4.33. 3. D grupa, II kolokvijum 2009.Date su frekvencije pojavƩivaƬa simbola:

simbol a d e n p rfrekvencija 12 9 8 11 10 7

a) Odrediti odgovaraju�e Hafmanovo stabloT (un. qv. oznaqavati sa T1, T2, T3, T4, T5), kao iodgovaraju�i Hafmanov kod.

b) hT =? n(v) =? T balans? T potpuno bin. st?

v) KLD, LKD i LDK obilazak.

g) Kodirati ,,napred“.

d) Dekodirati:011, 100, 000101, 101101001, 010000101.

Page 33: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

simbol a d e n p rfrekvencija 12 9 8 11 10 7

simbol r e d p n afrekvencija 7 8 9 10 11 12

Page 34: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

r e

0 1

15

7 8

T1

simbol r e d p n afrekvencija 7 8 9 10 11 12

︸ ︷︷ ︸

T1

15

Page 35: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

r e d p

0 1 0 1

15 19

7 8 9 10

T1 T2

simbol d p n a T1

frekvencija 9 10 11 12 15︸ ︷︷ ︸

T2

19

Page 36: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

23

11 12 15 19

7 8 9 10

T3

T1 T2

simbol n a T1 T2

frekvencija 11 12 15 19︸ ︷︷ ︸

T3

23

Page 37: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1 0 1

0 1 0 1

23 34

11 12 15 19

7 8 9 10

T3 T4

T1 T2

simbol T1 T2 T3

frekvencija 15 19 23︸ ︷︷ ︸

T4

34

Page 38: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol T3 T4

frekvencija 23 34︸ ︷︷ ︸

T5

57

Page 39: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Kako crtamo Hafmanovo stablo?

Page 40: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

Kako crtamo Hafmanovo stablo?Unazad, polaze�i od korena stabla!

Page 41: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

57

23 34

T

T5

T3 T4

simbol T3 T4

frekvencija 23 34︸ ︷︷ ︸

T5

57

Page 42: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

57

23 34

15 19

T

T5

T3 T4

T1 T2

simbol T1 T2 T3

frekvencija 15 19 23︸ ︷︷ ︸

T4

34

Page 43: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

57

23 34

11 12 15 19

T

T5

T3 T4

T1 T2

simbol n a T1 T2

frekvencija 11 12 15 19︸ ︷︷ ︸

T3

23

Page 44: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

d p

57

23 34

11 12 15 19

9 10

T

T5

T3 T4

T1 T2

simbol d p n a T1

frekvencija 9 10 11 12 15︸ ︷︷ ︸

T2

19

Page 45: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol r e d p n afrekvencija 7 8 9 10 11 12

︸ ︷︷ ︸

T1

15

Page 46: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0

0 0

0 0

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

Page 47: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

Page 48: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

kod 01 110 101 00 111 100

Page 49: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

kod 01 110 101 00 111 100nivo 2 3 3 2 3 3

Page 50: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

kod 01 110 101 00 111 100nivo 2 3 3 2 3 3

b) Visina stabla?

Page 51: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

kod 01 110 101 00 111 100nivo 2 3 3 2 3 3

b) Visina stabla je h = 3 (r, e, d i p).

Balansirano?

Page 52: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

kod 01 110 101 00 111 100nivo 2 3 3 2 3 3

b) Stablo je balansirano jer su svi listovina nivou h ili h − 1.

Potpuno binarno?

Page 53: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

kod 01 110 101 00 111 100nivo 2 3 3 2 3 3

b) Nije potpuno binarno, jer nisu svi listovina nivou h = 3 (npr. a i n: n(a) = n(n) = 2).

Striktno binarno?

Page 54: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

kod 01 110 101 00 111 100nivo 2 3 3 2 3 3

b) Stablo je striktno binarno, jer svaki un.qvor (T1, T2, T3, T4, T5) ima taqno 2 deteta.

Page 55: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

kod 01 110 101 00 111 100nivo 2 3 3 2 3 3

b) Hafmanovo stablo je uvek striktno bin.

Prefiksni kod?

Page 56: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

kod 01 110 101 00 111 100nivo 2 3 3 2 3 3

b) Hafmanov kod je prefiksni kod, jer nijedankod nije sadrжan u poqetku nekog drugog koda(ni 01, ni 00).

Page 57: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

kod 01 110 101 00 111 100nivo 2 3 3 2 3 3

b) Hafmanov kod je uvek prefiksni kod.

Page 58: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

v) KLD:

Page 59: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

v) KLD: T5,T3,n,a,T4,T1,r,e,T2,d,p.

LKD:

Page 60: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

v) KLD: T5,T3,n,a,T4,T1,r,e,T2,d,p.

LKD: n,T3,a,T5,r,T1,e,T4,d,T2,p.

LDK:

Page 61: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

v) KLD: T5,T3,n,a,T4,T1,r,e,T2,d,p.

LKD: n,T3,a,T5,r,T1,e,T4,d,T2,p.

LDK: n,a,T3,r,e,T1,d,p,T2,T4,T5.

Page 62: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

simbol a d e n p rfrekvencija 12 9 8 11 10 7

kod 01 110 101 00 111 100nivo 2 3 3 2 3 3

g) n00

a01

p111

r100

e101

d110.

Page 63: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

d) 1. req 011

Page 64: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

d) 1. req 01|1 (aT4) nije req date azbuke,2. req 100

Page 65: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

d) 1. req 01|1 (aT4) nije req date azbuke,2. req 100 je ,,r“,3. req 000101

Page 66: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

d) 1. req 01|1 (aT4) nije req date azbuke,2. req 100 je ,,r“,3. req 00|01|01 je ,,naa“,4. req 101101001

Page 67: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

d) 1. req 01|1 (aT4) nije req date azbuke,2. req 100 je ,,r“,3. req 00|01|01 je ,,naa“,4. req 101|101|00|1 (eenT4) nije req date azbuke,5. req 010000101

Page 68: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

n a

r e d p

0 1

0 1 0 1

0 1 0 1

57

23 34

11 12 15 19

7 8 9 10

T

T5

T3 T4

T1 T2

d) 1. req 01|1 (aT4) nije req date azbuke,2. req 100 je ,,r“,3. req 00|01|01 je ,,naa“,4. req 101|101|00|1 (eenT4) nije req date azbuke,5. req 01|00|00|101 je ,,anne“.

Page 69: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

4.57. 3. oktobar 2014.Dat je izraz

(3b+2c) : (−a+ bc) u infiksnoj

notaciji.

a) Odrediti binarno stablo koje odgovaraovom izrazu. Kolika je visina ovog stabla?Odrediti nivo svakog lista u tom stablu.Da li je balansirano? Da li je striktno bi-narno? Da li je potpuno binarno stablo?

b) Odrediti dijametar i centar stabla T .

v) Odrediti redosled obilazaka qvorova sta-bla T pri KLD, LKD i LDK obilasku.

g) Napisati u prefiksnoj i postfiksnojnotaciji dati izraz.

Page 70: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

4.60. 3. septembar 2013.a) Nacrtati binarno ure�eno stabla ako ele-menti dolaze slede�im redom:

12, 5, 20, 8, 3, 4, 1, 15, 18, 22, 25, 10, 13, 21, 7.

b) hT =? nivo svakog qvora? T balansirano?T striktno binarno? T potpuno bin. stablo?

v) KLD, LKD i LDK obilazak.

g) Izraqunati sredƬi broj pristupa qvorovi-ma stabla pri neuspexnom traжeƬu broja x.(Smatra se da je qitaƬe jednog qvora – jedanpristup.)

Page 71: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

Page 72: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

x < 2

Page 73: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

x < 2 42 < x < 5

Page 74: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

x < 2 42 < x < 5 45 < x < 7

Page 75: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

x < 2 42 < x < 5 45 < x < 7 57 < x < 8

Page 76: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

2 < x < 5 45 < x < 7 57 < x < 8 58 < x < 9

Page 77: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

5 < x < 7 57 < x < 8 58 < x < 9 59 < x < 15

Page 78: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

7 < x < 8 58 < x < 9 59 < x < 15 515 < x < 20

Page 79: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

8 < x < 9 59 < x < 15 515 < x < 20 220 < x < 26

Page 80: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

9 < x < 15 515 < x < 20 220 < x < 26 326 < x < 28

Page 81: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

15 < x < 20 220 < x < 26 326 < x < 28 328 < x < 30

Page 82: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

20 < x < 26 326 < x < 28 328 < x < 30 330 < x < 38

Page 83: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

26 < x < 28 328 < x < 30 330 < x < 38 4

x > 38

Page 84: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pris.

26 < x < 28 328 < x < 30 330 < x < 38 4

x > 38 4

Page 85: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj pristupa qvorovima stabla pri neuspex-nom traжeƬu

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pr.

x < 2 4

2 < x < 5 4

5 < x < 7 5

7 < x < 8 5

8 < x < 9 5

9 < x < 15 5

x br.pr.

15 < x < 20 2

20 < x < 26 3

26 < x < 28 3

28 < x < 30 3

30 < x < 38 4

x > 38 4

Page 86: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

broj.pris. qvorovima stabla pri neuspexnomtraжeƬu za a < x < b je max{n(a), n(b)}+ 1!

2

3 3

4 4

0

1 1

2 2

32

5

7

8

9

15

20

26

28

30

38

h=4

x br.pr.

x < 2 4

2 < x < 5 4

5 < x < 7 5

7 < x < 8 5

8 < x < 9 5

9 < x < 15 5

x br.pr.

15 < x < 20 2

20 < x < 26 3

26 < x < 28 3

28 < x < 30 3

30 < x < 38 4

x > 38 4

Page 87: 4. Stabla - mata.fon.rsmata.fon.rs/skladiste/dms/nastava/7/slajd-DMS-11.pdf · Definicija 5.8.4. Korensko stablo je binarno stablo ako svaki Ƭegov un. qvor ima najvixe 2 deteta.

KRAJ QASA