Upload
danijel-lukic
View
265
Download
2
Embed Size (px)
Citation preview
7/31/2019 Komar Lukic ZIS i Teorija Grafova
1/26
Sveuilite u Zagrebu
Fakultet organizacije i informatike
Varadin
Seminarski rad iz kolegija Zemljopisni informacijski sustavi
ZIS i teorija grafova
Ivan Komar, 35952/07-R
Danijel Luki, 35837/07-R
Varadin, svibanj 2011.
7/31/2019 Komar Lukic ZIS i Teorija Grafova
2/26
7/31/2019 Komar Lukic ZIS i Teorija Grafova
3/26
Sadraj
Sadraj.................................................................................................................... 3
Uvod ....................................................................................................................... 4
Sedam mostova Knigsberga .................................................................................. 5
Rjeenje .................................................................................................................. 6
Vanost problema u povijesti matematike i trenutno stanje mostova ...................7
Graf i podjela grafova .............................................................................................. 7
Algoritmi za rad nad grafovima ............................................................................... 9
Primov algoritam .................................................................................................. 9Kruskalov algoritam ........................................................................................... 13
Dijkstrin algoritam .............................................................................................. 18
Zakljuak .............................................................................................................. 22
Literatura .............................................................................................................. 24
Popis slika ............................................................................................................. 25
Popis tablica .......................................................................................................... 25
3
7/31/2019 Komar Lukic ZIS i Teorija Grafova
4/26
Uvod
Teorija grafova je posebna grana matematike koja se bavi prouavanjem grafova i njihovih
svojstava. Za nas informatiare je to takoer posebno zanimljivo podruje jer ima iroku
primjenu u informatici. Poznata je primjena grafova kod opisa modela podataka, struktura
podataka, kod programiranja i u raunalnim mreama. Kod mrea se grafovi koriste za
modeliranje i analiziranje mrenog prometa te internet prometa. Sve ovo navedeno su neke od
primjena teorije grafova koje smo dosada spominjali na nekim drugim kolegijima.
Naravno teorija grafova ima svoju primjenu i u zemljopisno informacijskim sustavima, a ovajseminar e se prvenstveno baviti primjenom teorije grafova u takvim sustavima s posebnim
naglaskom na algoritmima traenja najkraeg puta.
Da bismo lake objasnili primjenu grafova u zemljopisnim informacijskim sustavima najprije
emo definirati osnove pojmove vezane uz graf i teoriju grafova.
Neusmjereni graf (eng. undirected graph) G je par (V, E), pri emu je V skup vrhova (eng.
vertices) grafa, a skup neureenih parova elemenata iz V, koji ine skup bridova
(eng. edges) grafa G.1
Pojednostavljeno govorei grafovi se sastoje od vrhova(vorova) i grana(linija izmeu njih).
to se tie primjene teorije grafova u zemljopisnim informacijskim sustavima, grafovi
prikazuju stvarne fizike mree, kao to su prometnice, plinovodi,
vodotoci, dravne granice
Utemeljiteljem teorije grafova smatra se veliki vicarskimatematiar Leonhard Euler(1707 1783) koji je rijeio do tada
nerijeen problem Knigsberkih mostova. Problem knigsberkih
mostova ujedno je prvi primjer koritenja teorije grafova i naziva
se Sedam mostova Knigsberga i objavljen je 1763. godine.
1
Divjak, B., Lovreni, A.: Diskretna matematika s teorijom grafova, TIVA-FOI, Varadin, 2005.
4
Slika 1. Leonhard Euler
7/31/2019 Komar Lukic ZIS i Teorija Grafova
5/26
Sedam mostova Knigsberga
Primjer je inspiriran stvarnim gradom Knigsbergom.
Knigsberg je danas poznat pod nazivom Kaliningrad i ruska je enklava na Baltiku smjetena
izmeu Poljske i Litve. Sam grad je u prolosti stvarno imao sedam mostova koji su povezivali
dva otoka unutar grada s ostatkom grada. Kako su prema legendi oko 1750. godine brojni
ugledni stanovnici tadanjeg Knigsberga nedjeljom u svojim popodnevnim etnjama
pokuavali prijei mostove na opisani nain proizalo je sljedee pitanje: Je li mogue prijei
preko svakog od mostova samo jednom i vratiti se na poetnu toku? Ovo je pitanjezainteresiralo Leonharda Eulera koji je 1763. godine i dao konaan odgovor na ovo pitanje.
Slika 2. Sedam mostova Konigsberga
5
7/31/2019 Komar Lukic ZIS i Teorija Grafova
6/26
Rjeenje
Kako bi doao do svojeg rjeenja, Euler je cijeli problem predstavio u obliku teorije grafova.
Slika 3 pokazuje kako se to postie. Prvo je izbacio sve karakteristike terena osim samihkopnenih masa i mostova koji ih povezuju. Nakon toga, svaku je zemljanu masu predstavio
tokom koja se naziva verteks ili vor, i svaki most s linijom, nazvanom rub ili veza (link).
Izgled samog grafa moe biti izmijenjen na bilo koji nain koji ne mijenja samo graf - u
smislu da su veze izmeu toaka nepromijenjene. Dakle, nije vano jesu li linije ravne ili
zakrivljene i slino.
Slika 3. Prikaz problema pomou grafa
Euler je shvatio kako bi problem mogao rijeiti promatrajui stupnjeve vorova. to je stupanj
vora? Najjednostavnije govorei, stupanj nekog vora je jednak broju linija (veza) koje taj
vor dotiu. Konkretno, u sluaju Knigsberga imamo 3 vora 3. stupnja i jedan vor 5. stupnja.
Euler je matematiki dokazao kako je eljeni obilazak mogu onda i samo onda ako u sustavu
ne postoji niti jedan vor koji ima neparan stupanj. Takva je staza onda poznata pod nazivom
Eulerov krug. Kako graf koji predstavlja problem sedam mostova Konigsberga ima 4 vora sneparnim brojem stupnjeva, tada tvrdimo kako za njega ne postoji Eulerov krug.
Problem bi se mogao malo prilagoditi pa se moemo pitati postoji li u gornjem sluaju rjeenje
ako ne zahtijevamo da poetna toka puta mora biti jednaka krajnjoj. Ukoliko postoji, onda se
takva putanja naziva Eulerovim hodom ili Eulerovom stazom. Takva staza postoji ako i samo
ako graf nema vorove neparnog stupnja ILI ako postoje tono dva vora nepranog stupnja i
pod uvjetom da su upravo oni poetna i krajnja toka. Jasno je kako je i ovo nemogue u
sluaju problema sedam mostova Knigsberga.
6
7/31/2019 Komar Lukic ZIS i Teorija Grafova
7/26
Vanost problema u povijesti matematike i trenutno stanje mostova
U povijesti matematike, Eulerovo rjeavanje problema mostova Knigsberga se smatra prvim
teoremom teorije grafova koja je danas prihvaena kao grana kombinatorike (premda su
problemi kombinatorike razmatrani mnogo ranije).
Dodatno, Euler je jasno shvatio kako kljuni korak u rjeavanju problema mostova predstavlja
razmatranje uvjeta krajnjih toaka, a ne njihovog konkretnog poloaja u prostoru. Razlika
izmeu stvarnog prikaza i shematskog, grafikog, prikaza je dobar primjer kako topologija neobraa pozornost na konkretan i rigidan oblik objekata ve na veze i odnose meu njima.
Do dananjih dana su se odrala samo dva mosta iz Eulerovog vremena. Dva su mosta unitena
tijekom saveznikog unitavanja Knigsberga u Drugom svjetskom ratu, druga dva su unitili
Rusi i zamijenili ih autocestama. Jedan su most tijekom 1935. godine ponovno izgradili
Nijemci.
Graf i podjela grafova
Graf se sastoji od vrhova i bridova koji te vrhove povezuju. Dogovor je da se u teoriji grafova
vrhovi oznauju sa malim slovima u i v, a bridovi malim slovima e i f. Tako da
oznaava brid koji spaja vrhove e i f. To se isto moe zapisati i sa e =u v. Bridu se moe
pridruiti jo jedna vrijednost koja predstavlja njegovu teinu. To se uglavnom koristi pri
modeliranju problema grafom.
7
7/31/2019 Komar Lukic ZIS i Teorija Grafova
8/26
Slika 4. Primjeri grafova
Ovdje emo samo ukratko pojasniti sljedee vrste grafova: Usmjereni, neusmjereni, teinski i
neteinski.
Usmjeren graf je graf koji na svakom bridu ima dodanu orijentaciju. Kod usmjerenog grafa
bridovi su predstavljeni ureenim parom vrhova, a kod neusmjerenog grafa bridovi su
predstavljeni neureenim parom vrhova, tj. dvolanih skupova.
Kod teinskih grafova granama su pridrueni jedan ili vie realnih brojeva koji mogu
oznaavati npr. cijenu, udaljenost i sl. Grane neteinskih grafova nemaju pridruene te
vrijednosti.
Slika 5. Usmjereni, neusmjereni i teinski grafovi
8
7/31/2019 Komar Lukic ZIS i Teorija Grafova
9/26
Algoritmi za rad nad grafovima
Osnovna podjela algoritama za rad nad grafovima:
1. Razapinjajua stabla
Primov algoritam
Kruskalov algoritam
2. Najkrae udaljenosti u grafu
Dijkstrin algoritam za pronalaenje najkraih putova
Floydov algoritam za pronalaenje najkraih putova
3. Maksimalni protok u mrei
Ford-Fulkersonov algoritam
Primov algoritam
Primov algoritam slui za pronalaenje minimalno razapinjujueg stabla za povezani teinski
graf, tj. algoritam pronalazi podskup grana koji formiraju stablo i ukljuuju sve vorove tako da
je ukupna teina stabla minimalna. Za otkrie tog algoritma zasluna su tri ovjeka: Vojteh
Jarnik, Robert Prim, a na njemu je radio i Edsher Dajkstra. Stoga je taj algoritam poznat jo i
pod nazivom DJP algoritam.
Osnovna zamisao ovog algoritma je postepeno poveavanje veliine stabla od jednog vora, pa
sve dok se ne povee sve vorove.
9
7/31/2019 Komar Lukic ZIS i Teorija Grafova
10/26
Sam algoritam ima slijedei redoslijed:
1. Odabir proizvoljnog poetnog vora
2. Pronalaenje njemu najblieg vora koji postaje dio grafa
3. Pronai grafu najblii slobodni vor
4. Iterativno se ponavlja postupak pod korakom 3. sve dok svi vorovi ne budu ukljueni u
graf
Sada slijedi konkretan primjer Primovog algoritma na kojem moemo lake shvatiti kako sam
algoritam funkcionira po svojim koracima:
1. korak - odabir poetnog vora
Na slici 6 prikazan je poetni povezani teinski graf. Brojevi koji se nalaze pokraj pojedinih
grana oznaavaju njihove teinske
vrijednosti. U ovom koraku ni jedna
grana nije posebno izdvojena, odnosno
obiljeena. Proizvoljno odaberemo vor
D kao poetnu toku.
Tablica 1. Primov algoritam, 1, korak
SUSJEDNI
VOROVIA,B,E,F
NESUSJEDNI
VOROVIC, G
SKUP RJEENJA D
2. korak
U drugom koraku odabiremo drugi vor koji
je najblii voru D s obzirom na udaljenosti.
10
Slika 6. 1.korak Primovog algoritma
Slika 7. 2. korak Primovog algoritma
7/31/2019 Komar Lukic ZIS i Teorija Grafova
11/26
Udaljenosti: D do A = 5, D do B =9, D do E = 15, D do F = 6
Najmanja udaljenost je dakle 5, te odabiremo vor A i granu DA.
Tablica 2. Primov algoritam, 2. korak
SUSJEDNI
VOROVIB,E,F
NESUSJEDNI
VOROVIC, G
SKUP RJEENJA A,D(zelenom bojom su oznaene odabrane grane, a plavom bojom su oznaene grane koju su bile
mogua rjeenja)
3. korak
U koraku 3 odabire se vor koji je najblii ili
voru A ili voru D s obzirom na udaljenosti:
Udaljenosti: B do D=9, B do A =7, E do B = 15,
F do D = 6
Najmanja udaljenost je dakle 6, de odabiremo
vor F i granu DF.
Tablica 3. Primov algoritam, 3. korak
SUSJEDNI
VOROVIB,E,G
NESUSJEDNI
VOROVIC
SKUP RJEENJA A,D,F
4.korak
U koraku 4 biramo vor koji je najblii voru A,
D ili F s obzirom na udaljenosti:
Udaljenosti: A do B = 7, F do E = 8, F do G
= 11, D do B = 9, D do E = 15
11
Slika 8. 3.korak Primovog algoritma
Slika 9. 4. korak Primovog algoritma
7/31/2019 Komar Lukic ZIS i Teorija Grafova
12/26
Najmanja udaljenost je dakle 7, dakle biramo granu AB.
Tablica 4. Primov algoritam, 4. korak
SUSJEDNI
VOROVI
C,E,G
NESUSJEDNI
VOROVInema
SKUP RJEENJA A,D,F,B
5. korak
U koraku 5 biramo najmanju udaljenostmeu vorovima koji su ostali s obzirom
na udaljenosti. Ostali su vorovi C, E, G.
Udaljenosti: B do C = 8, B do E = 7, F
do E = 8, F do G = 11
Najmanja udaljenost je dakle 7, pa uzimamo
granu BE.
Tablica 5. Primov algoritam, 5. korak
SUSJEDNI
VOROVIC,G
NESUSJEDNI
VOROVInema
SKUP RJEENJA A,D,F,B,E
6. korak
U koraku 6 kreemo sa posljednjim koracima,
ostali su jo samo vorovi C i G koje
usporeujemo prema udaljenostima.
Udaljenosti: E do C = 5, E do G = 9
12
Slika 10. 5.korak Primovog algoritma
Slika 11. 6.korak Primovog algoritma
7/31/2019 Komar Lukic ZIS i Teorija Grafova
13/26
Najmanja udaljenost je 5 pa uzimamo granu EC.
Tablica 6. Primov algoritam, 6. korak
SUSJEDNI
VOROVI
G
NESUSJEDNI
VOROVInema
SKUP RJEENJA A,D,F,B,E,C
7. korak
Doli smo do posljednjeg koraka. Jedini
vor koji je ostao nepovezan jest vor G.
Udaljenosti: E do G = 9, F do G = 11
Biramo granu EG i time dolazimo do rjeenja,
obiljeeni su svi vorovi. Minimalna teina
ovog stabla jest:5+6+7+7+5+9=39
Tablica 7. Primov algoritam, 7. korak
SUSJEDNI
VOROVInema
NESUSJEDNI
VOROVInema
SKUP RJEENJA A,D,F,B,E,C,G
Primov algoritam mogue je upotrijebiti kod optimizacije prometnih ili komunikacijskih veza,
izgradnja vodovoda (gdje bi vorovi predstavljali kue, a grane cijevi) te za razne druge svrhe.
Kruskalov algoritam
Jo jedan algoritam koji slui za traenje minimalno razapinjajueg stabla povezanih i
neusmjerenih grafova je i Kruskalov algoritam.
Algoritam se sastoji od slijedeih koraka:
13
Slika 12. 7.korak Primovog algoritma
7/31/2019 Komar Lukic ZIS i Teorija Grafova
14/26
1. sortiraj sve grane koje su kandidati za ulazak u graf na temelju njihovih teinskih
vrijednosti
2. prikljui najmanju granu grafu ako se time ne zatvara ciklus
3. taj drugi postupak se ponavlja iterativno tako dugo dok sve poetne toke ne postanu dio
grafa
1. korak
Sortiranje grana grafa po njihovim teinskimvrijednostima.
Tablica 8. Kruskalov algoritam, 1. korak
GRANA
AD CE DF AB BE EF BC EG DB FG DE
TEIN
A5 5 6 7 7 8 8 9 9 11 15
2. korak
Izabire se ona grana koja je prva na sortiranoj
listi, u ovom sluaju grana AD.
Tablica 9. Kruskalov algoritam, 2. korak
GRANA
AD CE DF AB BE EF BC EG DB FG DE
14
Slika 13. 1. korak Kruskalovogalgoritma
Slika 14. 2. korak Kruksalovogalgoritma
7/31/2019 Komar Lukic ZIS i Teorija Grafova
15/26
TEIN
A5 5 6 7 7 8 8 9 9 11 15
3. korak
Slijedea grana koja se dodaje je grana CE koja
zapoinje novo podstablo zato jer vorovi C i E
ne pripadaju jo nijednom stablu.
Tablica 10. Kruskalov algoritam, 3. korak
GRAN
AAD CE DF AB BE EF BC EG DB FG DE
TEIN
A5 5 6 7 7 8 8 9 9 11 15
4. korak
Dodaje se grana DF, ona dodaje novi vor F.
Tablica 11. Kruskalov algoritam, 4. korak
GRAN
AAD CE DF AB BE EF BC EG DB FG DE
TEIN
A
5 5 6 7 7 8 8 9 9 11 15
15
Slika 15. 3. korak Kruksalovog
algoritma
Slika 16. 4. korakKruksalovog algoritma
7/31/2019 Komar Lukic ZIS i Teorija Grafova
16/26
5. korak
Dodaje se grana AB, ona dodaje vor B.
Tablica 12. Kruskalov algoritam, 5. korak
GRAN
AAD CE DF AB BE EF BC EG DB FG DE
TEIN
A5 5 6 7 7 8 8 9 9 11 15
6. korak
Dodaje se grana BE, koja sada povezuje dva
nepovezana stabla.
Tablica 13. Kruskalov algoritam, 6. korak
GRAN
AAD CE DF AB BE EF BC EG DB FG DE
TEIN
A5 5 6 7 7 8 8 9 9 11 15
7. korak
16
Slika 17. 5. korak Kruksalovogalgoritma
Slika 18. 6. korak Kruksalovogalgoritma
7/31/2019 Komar Lukic ZIS i Teorija Grafova
17/26
Sljedee grane na listi koje bi se trebale
dodati su grane EF i BC, ali poto one
spajaju vorove koji ve pripadaju
stablu, one se ne prihvaaju kao dio
minimalno razapinjajueg stabla.
Tablica 14. Kruskalov algoritam, 7. korak
GRAN
AAD CE DF AB BE EF BC EG DB FG DE
TEIN
A
5 5 6 7 7 8 8 9 9 11 15
8. korak
Dodaje se grana EG koja dodaje posljednji
vor G.
17
Slika 19. 7. korak Kruksalovogalgoritma
Slika 20. 8. korak Kruksalovogalgoritma
7/31/2019 Komar Lukic ZIS i Teorija Grafova
18/26
Tablica 15. Kruskalov algoritam, 8. korak
GRAN
AAD CE DF AB BE EF BC EG DB FG DE
TEIN
A5 5 6 7 7 8 8 9 9 11 15
9. korak
Tri preostale grane DB,FG i DE su grane
koje povezuju vorove koji pripadaju istom
stablu pa ih iz tog razloga ne prihvaamo.
Samim time doli smo i do konanog
rjeenja. Minimalno razapinjajue stablo je
prikazano zelenom bojom (u tablici).
Minimalna teina stabla je: 39
Upotreba Kruskalovog algoritma je ista kao i za Primov algoritam.
Dijkstrin algoritam
Dijkstrin algoritam je vjerojatno najpoznatiji algoritam traenja najkraeg puta u teinskim
grafovima. Taj algoritam je 1959. godine osmislio poznati nizozemski matematiar i
informatiar Edsger W. Dijkstra, koji je inae poznat po mnogim algoritmima iz podruja
matematike, raunarstva i informatike.
Ulaz u Dijkstrin algoritam predstavlja teinski graf i dva vrha. Izlaz iz Dijkstrinog algortima
predstavljaju najkrai put od do .
U toku algoritma svakom se vrhu u grafu pridruuje ureeni par , gdje d predstavlja
najkrai put od vrha do vrha , a x je posljednji brid na tom najkraem putu. Zahvaljujui
prvoj koordinati x vraanjem unazad se moe rekonstruirati itav najkrai put od do .
Ukoliko se dogodi da vrh nikada nije oznaen, to znai da ne postoji put od do to opet
znai da graf nije povezan.
ALGORITAM:
18
Slika 21. 9. korak Kruksalovogalgoritma
7/31/2019 Komar Lukic ZIS i Teorija Grafova
19/26
1. Pridrui poetnom vrhu oznaku
2. Dok je vrh neoznaen ili mu nije mogue pridruiti daljnje oznake radi sljedee:
Za svaki oznaeni vrh i za svaki neoznaeni vrh susjedan s vrhom , izraunaj.
Pronai i pridrui vrhu oznaku . Ako se vrh moe oznaiti sa
za vie razliitih vrhova , odaberi bilo koji od tih vrhova .
PRIMJER DIJKSTRINOG ALGORITMA:
U ovom primjeru elimo pronai najkrai put od vrha A do svih ostalih vrhova u grafu. Vrh A
uzimamo kao poetni vrh, te on odmah ulazi u poetno rjeenje jer znamo da je udaljenost od
vrha A do njega samog 0. Taj vrh emo opisati ureenim parom A(-,0). Iz navedene slike
moemo vidjeti da vrh A ima 3 susjeda, to su B, D i C. Poto su to izravni susjedi vrha A,
moemo dobiti udaljenost od vrha A do tih vrhova. Udaljenosti su: B(A,5), C(A,2), D(A,9).
Dijkstrin algoritam nam govori da uzmemo onaj vrh koji ima najmanju drugu koordinatu, unaem sluaju to e biti vrh C i njega uvrtavamo u rjeenje. Nakon prvog prolaza graf ima
sljedei oblik:
19
A C
B D
E
F
2 7
95
3
3
42
1
Slika 22. Dijkstrin 1
7/31/2019 Komar Lukic ZIS i Teorija Grafova
20/26
Sada se opet gledaju susjedni vrhovi, ali ovaj puta za oba oznaena vrha, te se izraunavaju
njihove udaljenosti od vrha A. Vrijednosti koje se dobiju su B(A,5), D(A,9),D(C,5),F(C,9).
Opet uzimamo vrh ija druga koordinata ima najmanju vrijednost. U ovom naem konkretnom
primjeru imamo dva takva vrha, pa je svejedno kojeg emo uzeti. U ovoj iteraciji kao vrh emo
u rjeenje staviti vrh B(A,5). Sada imamo sljedei izgled grafa:
Koraci algoritma se opet ponavljaju, dakle opet izraunavamo vrijednosti susjednih vrhova do
sad ve oznaenih vrhova. Te vrijednosti su D(A,9), D(B,8), D(C,5), E(B,9),F(C,9). Najmanja
vrijednost je D(C,5), te vrh D stavljamo u rjeenje. Nakon ove iteracije graf izgleda ovako:
20
A C
B D
E
F
2 7
95
3
3
42
1
A C
B D
E
F
2 7
95
3
3
4
2
1
Slika 24. Dijkstrin 3
Slika 23. Dijkstrin 2
7/31/2019 Komar Lukic ZIS i Teorija Grafova
21/26
Vidimo da sada imamo oznaene vrhove A,B,C,D i traimo njihove susjede koji jo nisu
oznaeni. Dolazimo do sljedeih vrhova: E(B,9), E(D,7), F(C,9). Druga koordinata ima
najmanju vrijednost kod vrha E(D,7), te i taj vrh uvrtavamo u rjeenje. Nakon ove iteracije graf
izgleda ovako:
Jo nam je preostao samo jedan vrh, do njega moemo doi na vie naina: F(E,8), F(C,9).
Prema algoritmu uzima se rjeenje F(E,8) poto je to zadnji vrh to je i konano rjeenje.
Konani izgled grafa izgleda ovako:
21
A C
B D
E
F
2 7
95
3
3
42
1
A C
B D
E
F
2 7
95
3
3
42
1
Slika 25. Dijkstrin 4
Slika 26. Dijkstrin 5
7/31/2019 Komar Lukic ZIS i Teorija Grafova
22/26
Konano rjeenje:
A(-,0), B(A,5), C(A,2), D(C,5), E(D,7), F(E,8)
Zakljuak
U ovom seminarskom radu nastojali smo pokazati kako se teorija grafova primjenjuje u
informatici, konkretnije u zemljopisnim informacijskim sustavima. Spomenuli smo osnivaa
22
A C
B D
E
F
2
5 3
2
1
Slika 27. Dijkstrin 6
7/31/2019 Komar Lukic ZIS i Teorija Grafova
23/26
teorije grafova Eulera, te njegov primjer Sedam mostova Konigsberga u kojem je on prvi puta
primjenio teoriju grafova. Zatim smo opisali vrste grafova na temelju kojih su se temeljili neki
algoritmi (teinski grafovi). Pokazali smo kako se moe doi do minimalno razapinjajueg
stabla pomou Primovog i Kruskalovog algoritma. Konkretna primjena tih dvaju algoritama je
kod optimizacije prometnih i komunikacijskih veza, izgradnji vodovoda i sl.
Takoer smo obradili jedan od najpoznatijih algoritama za traenje najkraeg puta Dijkstrin
algoritam.
23
7/31/2019 Komar Lukic ZIS i Teorija Grafova
24/26
Literatura
Divjak, B., Lovreni, A.: Diskretna matematika s teorijom grafova, TIVA-FOI, Varadin,2005.
Cormen, T.H., Leisterson, C.E., Rivest, R.L.: Introduction to Algorithms, MIT Press, 1999
INTERNET:
1. http://e.math.hr/math_e_article/br14/fosner_kramberger(uitano 9.5.2011.)
2. http://en.wikipedia.org/wiki/Prim%27s_algorithm (uitano 10.5.2011.)
3. http://en.wikipedia.org/wiki/Kruskal%27s_algorithm (uitano 10.5.2011.)
4. http://en.wikipedia.org/wiki/Seven_Bridges_of_K%C3%B6nigsberg (uitano 9.5.2011)
24
http://e.math.hr/math_e_article/br14/fosner_krambergerhttp://en.wikipedia.org/wiki/Prim's_algorithmhttp://en.wikipedia.org/wiki/Kruskal's_algorithmhttp://en.wikipedia.org/wiki/Seven_Bridges_of_K%C3%B6nigsberghttp://e.math.hr/math_e_article/br14/fosner_krambergerhttp://en.wikipedia.org/wiki/Prim's_algorithmhttp://en.wikipedia.org/wiki/Kruskal's_algorithmhttp://en.wikipedia.org/wiki/Seven_Bridges_of_K%C3%B6nigsberg7/31/2019 Komar Lukic ZIS i Teorija Grafova
25/26
Popis slika
Slika 1. Leonhard Euler............................................................................................4
Slika 2. Sedam mostova Konigsberga..................................................................5
Slika 3. Prikaz problema pomou grafa....................................................................6
Slika 4. Primjeri grafova..........................................................................................8
Slika 5. Usmjereni, neusmjereni i teinski grafovi..........................8
Slika 6. 1.korak Primovog algoritma....................................................................10
Slika 7. 2. korak Primovog algoritma....................................................................10
Slika 8. 3.korak Primovog algoritma.....................................................................11Slika 9. 4. korak Primovog algoritma....................................................................11
Slika 10. 5.korak Primovog algoritma...................................................................12
Slika 11. 6.korak Primovog algoritma...................................................................12
Slika 12. 7.korak Primovog algoritma...................................................................13
Slika 13. 1. korak Kruskalovog algoritma...............................................................14
Slika 14. 2. korak Kruksalovog algoritma...............................................................14
Slika 15. 3. korak Kruksalovog algoritma...............................................................15
Slika 16. 4. korak Kruksalovog algoritma...............................................................15
Slika 17. 5. korak Kruksalovog algoritma...............................................................16
Slika 18. 6. korak Kruksalovog algoritma...............................................................16
Slika 19. 7. korak Kruksalovog algoritma...............................................................17
Slika 20. 8. korak Kruksalovog algoritma...............................................................17
Slika 21. 9. korak Kruksalovog algoritma...............................................................18
Slika 22. Dijkstrin 1...............................................................................................19
Slika 23. Dijkstrin 2...............................................................................................20Slika 24. Dijkstrin 3...............................................................................................20
Slika 25. Dijkstrin 4...............................................................................................21
Slika 26. Dijkstrin 5...............................................................................................21
Slika 27. Dijkstrin 6...............................................................................................22
Popis tablica
Tablica 1. Primov algoritam, 1, korak....................................................................10
25
7/31/2019 Komar Lukic ZIS i Teorija Grafova
26/26
Tablica 2. Primov algoritam, 2. korak....................................................................11
Tablica 3. Primov algoritam, 3. korak....................................................................11
Tablica 4. Primov algoritam, 4. korak....................................................................12
Tablica 5. Primov algoritam, 5. korak....................................................................12
Tablica 6. Primov algoritam, 6. korak....................................................................13
Tablica 7. Primov algoritam, 7. korak....................................................................13
Tablica 8. Kruskalov algoritam, 1. korak................................................................14
Tablica 9. Kruskalov algoritam, 2. korak...............................................................14
Tablica 10. Kruskalov algoritam, 3. korak.............................................................15
Tablica 11. Kruskalov algoritam, 4. korak.............................................................15
Tablica 12. Kruskalov algoritam, 5. korak.............................................................16
Tablica 13. Kruskalov algoritam, 6. korak.............................................................16Tablica 14. Kruskalov algoritam, 7. korak.............................................................17
Tablica 15. Kruskalov algoritam, 8. korak.............................................................18