Vladimir Balti
TEORIJA GRAFOVA za studente Fakulteta organizacionih nauka koji sluxaju Diskretne matematiqke strukture
BEOGRAD 2008
Sadraj 4. TEORIJA TEORIJA GRAFOVA 4.1. Kratak istorijat Teorije grafova . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2. Osnovni pojmovi i tvrea Teorije grafova . . . . . . . . . . . . . . . . . . . . . . . . . 4.3. Razni na naqini pr preds edstavaa gr grafova . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Matrica su susedstva gr grafa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Lista susedstva grafa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Matrica in incidencije qv qvorova i grana . . . . . . . . . . . . . . . . . . . . . . . . . . . . Matrica rastojaa grafa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4. Ojlerovi grafovi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5. H am amiltonovi grafovi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6. St Stabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.7. Korenska stabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hafmanov k ˆod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8. Za Zadaci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BIBLIOGRAFIJA
4
6 13 19 19 20 21 22 23 26 30 33 37 40 45
3
4
4. TEORI TEORIJA JA GRAFOVA
4. Teor eorija ija grafova grafova Kombinatorika (sa Teorijom grafova) je jedna od najstarijih oblasti matematike, ali i danas je veoma aktuelna. aktuelna. Neki eni problemi su zaokupali zaokupali matematiqa matematiqare re vekovima vekovima (poput problema qetiri qetiri boje), boje), dok su neke neke oblast oblasti i posta postale le veoma veoma aktuel aktuelne ne sa vrtog vrtoglav lavim im razvoj razvojem em raquna raqunara ra i ihovom sve veom primenom pri rexavau matematiqkih problema. Grafov Grafovi i su matema matematiq tiqki ki objekti objekti koje veoma veoma qesto qesto sreemo sreemo u svakodn svakodnevn evnom om ivotu ivotu.. Ako posmatramo neku geografsku mapu sa mnoxtvom gradova koji su povezani nekim putevima – dobijamo jedan graf. U skupu udi na nekom predavau neki se meusobno poznaju, a neki ne – ako sve ude predstavimo taqkicama, a samo one koji se poznaju spojimo linijama dobiemo jedan graf, koji nam daje dobru sliku poznanstva poznanstva meu udima udima na tom predavau. predavau. Strukturna Strukturna formula nekog molekula ili jediea jediea takoe takoe predst predstav ava a jedan jedan graf. graf. Xema Xema nekog nekog elektri elektriqno qnogg kola kola u teorij teoriji i kola kola ili elektronici isto predstava jedan graf. Grafovi Grafovi nalaze primenu i u rexavau tzv. problema za razbibrigu razbibrigu.. Sada emo navesti neke od ih: slici su date 3 kue kue i 3 bunara bunara.. Poveza Povezati ti svaku kuu sa sva 3 bunara bunara putevi putevima, ma, koji se • Na slici meusobno ne seku.
K
K
K
B
B
B
• Odrediti najvei broj dama koje se mogu staviti na xahovsku tablu n × n tako da se one meusobno ne napadaju. • Odrediti najmai broj dama koje je potrebno postaviti na xahovsku tablu n × n tako da one napadaju sva poa te table. • Koliko Koliko ima razliqitih razliqitih postava postavaa a tih dama? (dva su postavaa postavaa ista ako se mogu dobiti okretaem table – rotacijom ili simetrijom u odnosu na neku osu table) • Obii skakaqem xahovsku tablu m × n, tako da skakaq obie sva poa i da ni na jednom ne bude vixe od jedan put. • Moe li se jednim potezom (bez dizaa olovke sa papira) nacrtati figura sa slike?
Iz ove grupacije je nastao i jedan od najpoznatijih grafovskih problema, a to je problem 4 boje. Zbog velikog spektra primena, kao i izuzetno jednostavne veze definicije i osnovnih svojstava, grafovi su oni naxli i veliku primenu ne samo u drugim matematiqkim oblastima poput kombinatorike, natorike, kombinato kombinatorne rne optimizaci optimizacije, je, operacioni operacionih h istraiva istraivaa, a, linearne linearne algebre, algebre, kompleksne kompleksne analize, nego i u drugim (nematematiqkim) naukama kao xto su elektrotehnika, raqunarstvo, hemi ja, fizika, biologija, sociologija, vojne nauke... Kroz naredna 2 primera ilustrovaemo primenu u raqunarstvu. PRIMER 4.0.1 PRIMER 4.0.1.. Algorita Algoritam m ranga ranga stranice. stranice. Najvea Najvea sopstvena sopstvena vrednost grafa se naziva naziva spektralni spektralni radijus ili indeks grafa (kasnije emo se detanije detanije upoznati upoznati sa ovim pojmom). pojmom). Vektor Vektor koji odgovara najveoj sopstvenoj vrednosti grafa (Peronov vektor) je baza za Algoritam ranga stranice (eng. PageRank algorithm) koji koristi Google pri pretraivau pretraivau.. Akademsko Akademsko citirae radova se primenilo na Internet (Web), uglavnom kao prebrojavae linkova koji vode do odeene stranice. stranice. Ovo daje aproksimaci aproksimaciju ju o kvalitetu kvalitetu,, odnosno odnosno vanosti vanosti neke stranice. stranice. Algorita Algoritam m ranga ranga stranice produbuje ovu ideju tako xto ne broji linkove od svih stranica podjednako, nego to radi radi uz normal normaliza izacij ciju u broja broja stranic stranica a koje koje polaze polaze iz jednog jednog qvora. qvora. Algori Algoritam tam je razvij razvijen en na Stenford Univerzitetu u Americi 1995. godine.
5
Pretpostavimo da na stranicu A ukazuju linkovi T 1 , T 2 , . . . , Tn i da je parametar d faktor otkaza izmeu 0 i 1. Broj C (A) je broj linkova koji odlaze iz qvora A. Tada se rang za stranicu A raquna kao: P R(T 1 ) P R(T 2 ) P R(T n ) + + ... + P R(A) = (1 − d) + d . C (T 1 ) C (T 2 ) C (T n )
Algoritam ranga stranice formira funkciju raspodele na skupu stranica, tako da je suma svih rangova jednaka 1. Vrednosti ranga stranica (to su P R) se mogu izraqunati prostim iterativnim algoritmom i odgovaraju koordinatama u Peronovom vektoru matrice susedstva Web-a. Na narednoj slici su prikazane vrednosti ranga stranica za graf sa qetiri qvora. Napomenimo da moemo izraqunati vrednosti ranga stranica za preko 26 miliona stranica za nekoliko sati na proseqnoj radnoj stranici.
PRIMER 4.0.2. Xiree virusa u raqunarskim mreama. Spektralna teorija grafova ima lepe rezultate koji su usko povezani sa fiziqkim osobinama raqunarskih mrea. Nedavno je dokazano da spektralni radijus grafa igra vanu ulogu u modelirau xirea virusa u mreama. U SIS modelu (eng. Susceptible - Infected - Susceptible ) svaki qvor u mrei je u jednom od dva staa: zaraen (moe da xiri virus) ili zdrav (osetiv na virus). Ovaj model takoe pretpostava istovremenu promenu staa svih qvorova. Zato, qim se neki qvor zarazi postaje izvor zaraze, odnosno qim se izleqi osetiv je na ponovne infekcije. Epidemioloxka teorija predvia posto jae epidemskog praga osetivosti (eng. epidemic threshold ). Procenat infekcije po svakom linku koji je povezan na zaraeni qvor je jednak β , dok je procenat leqea za svaki zaraeni qvor δ. Efektivna brzina xirea virusa je prema tome definisana kao koliqnik β/δ . Epidemski prag osetivosti τ je onda kritiqna vrednost za β/δ : za efektivnu brzinu xirea virusa ispod τ virus u mrei izumire; dok u sluqaju da je efektivna brzina xirea virusa iznad τ virus preovlauje - konstantan procenat qvorova ostaje zaraen u svakom trenutku.
Dokazano je u [11] da je τ = ρ(1G) , gde je ρ(G) bax spektralni radijus matrice susedstva A grafa. Dakle, xto je radijus mai, to je mrea otpornija na napade i xiree virusa. Ovo prirodno dovodi do postavaa sledeeg problema: Koji grafovi sa n qvorova imaju najmai spektralni radijus? Poznato je da put P n ima najmai spektralni radijus. Meutim u praksi, ovakvo rexee nije najoptimalnije jer bi sama komunikacija u mrei bila spora sa mogunoxu zaguxea. Zato postavamo dodatne uslove, uzimajui u obzir razne invarijante grafova (dijametar, najvei stepen, itd).
6
4. TEORIJA GRAFOVA
4.1
Kratak istorijat Teorije grafova
Ovde emo izloiti kratak pregled Teorije grafova, na osnovu radova uvaenih matematiqara u ovoj oblasti Frenka Hararija (eng. Frank Harary), Ralfa Grimaldija (eng. Ralph P. Grimaldi) i Dragoxa Cvetkovia (nax akademik iz ove oblasti, jedan od najzaslunijih za razvoj Teori je grafova na jugoslovenskim prostorima), kao i iz dvotomne Enciklopedije kombinatorike (eng. Handbook of Combinatorics, Vol. I & II ). U ovom osvrtu emo ii hronoloxkim redosledom najbitni jih rezultata, sa kratkim istorijatom matematiqara koji su zasluni za te rezultate (kod matematiqara koji su dali vixe rezultata iz Teorije grafova daemo i sve naredne u istom paragrafu). Sada emo navesti najznaqajnije rezultate iz Teorije grafova (neki zbog istorijskog, a neki zbog matematiqkog znaqaje) sa sve ihovim autorima. Istorijski podaci su preuzeti iz kiga Frenka Hararija, Dragoxa Cvetkovia, Ralfa Grimaldija i iz Enciklopedije kombinatorike. 1. Leonard Ojler (nem. Euler, 1707-1783), 1736. godina, zaqetak Teorije grafova i Ojlerovi putevi u grafu; 1750. godina, Ojlerova formula za poliedre. 2. Gustav Kirhof (nem. Gustav Kirchoff , 1824-1887), 1847. godina, Teorema o matricama i stablima. 3. F. Nauk (nem. F. Nauck), 1850. godina, rexio Problem 8 dama. 4. Artur Kejli (eng. Arthur Cayley, 1821-1895), 1857. godina, broj razapiuih stabala potpunog grafa. 5. Ser Vilijam Hamilton (eng. Sir William Rowan Hamilton , 1805-1865), 1859. godina, slagalica sa Hamiltonovim putem. 6. Menger (eng. K.Menger), 1927. godina, Mengerova teorema o povezanosti u grafu. 7. Kasimir Kuratovski (poski Kasimir Kuratowski, 1896-1980), 1930. godina, Teorema Kuratovskog o planarnim grafovima. 8. Denex Kenig (maarski D´enes K¨onig, 1884-1944), 1936. godine, objavivae Kenigove monografije — zasnivae Teorije grafova kao samostalne discipline. 9. or Poa (eng. Georg Polya; maarski Gy¨orgy P´olya, 1887-1985), 1937. godina, dao rezultate koji se danas nazivaju Teorija Poe. 10. Fruht (nem. Frucht), 1938. godina, Fruhtova teorema o automorfizmima grafa. 11. Turan (maarski Tur´an), 1941. godina, Turanova teorema – pionirski rad u ekstremalnoj teoriji grafova. 12. Tat (W.E. Tutte), 1947. godina, formulisao teoremu o egzistenciji 1-faktora u grafu. 13. Nex–Vilijams (eng. Nesh, Williams), 1961. godina, tvree o granski disjunktnim acikliqnim podgrafovima u grafu. 14. Ringel-Jangs (eng. Ringel, Youngs), 1968. godina, tvree o rodu grafa. 15. Kenet Apel i Volfgang Heken (eng. Kenneth Appel, Wolfgang Haken), 1976. godina, problem 4 boje. Sada emo o nekim od ovih rezultata rei malo vixe. 1. Xvajcarskom matematiqaru Leonardu Ojleru su tokom boravka u Kenigsbergu (nem. K¨onigsberg; danaxi Kaliingrad) mextani postavili problem da pree preko svih 7 mostova (koji spa jaju 2 obale reke Pregel meusobno i sa 2 ostrva) tako da preko svakog pree taqno jedanput. Ojler je dao odreqan odgovor. 26. avgusta 1735. godine, Ojler je prezentovao svoj rad na ovom problemu Sant Petersburgxkoj akademiji nauka dokazujui da je takav obilazak mostova nemogu uz napomenu da se egov metod moe proxiriti na prozvoan raspored ostrva i mostova. Taqnije, Ojler je samo formulisao potrebne i dovone uslove da takav obilazak postoji, ali nije smatrao da je
4.1. ISTORIJAT TEORIJE GRAFOVA
7
potrebno da pokae dovone uslove u opxtem sluqaju. Prvi potpuno korektan dokaz ovog tvrea je dao Hirholcer (nem. Hierholzer). Na narednoj slici levo je predstavena mapa Kenigsberga (iz vremena Ojlera) sa egovim mostovima. Ojler je svakoj obali i ostrvu pridruio qvorove grafa, a grane izmeu ih su bili mostovi. Tako je on dobio jedan multigraf, koji je predstaven na slici desno.
Ojler je qlanak o Problemu Kenigsbergxkih mostova napisao 1736. godine (i stoga se ta godina uzima za osnivae teorije grafova) i on je prvi put objaven 1741. godine, ali je tada probudio malo interesa meu ostalim matematiqarima. Neke stranice iz ovog rada su prikazane na narednoj slici. Ovaj problem i rezultat su ostali malo poznati do kraja 19. veka kada su ga engleski matematiqari or Lukas (eng. George Lucas, 1882.) i Raus Bol (eng. Rouse Ball, 1892.) ukuqili u svoje kige o rekreativnoj matematici. Pojam Ojlerovog grafa za graf koji se moe nacrtati ne podiui olovku sa papira se odomaio zahvaujui Kenigu, koji ga je iskoristio u svojoj pionirskoj kizi o Teoriji grafova (1936. godine; vixe o oj kasnije).
Traee Ojlerovog puta nalazi primenu u jox nekim problemima Kombinatorne optimizaci je, poput Problema kineskog poxtara (sa kojim emo se sresti kasnije), ali i u radu sa laserima, gde nam je ci da optimalno koristimo laser i samim tim pojeftinimo cenu finalnog proizvoda (metodama Kombinatorne optimizacije postignuta je uxteda vremena rada i do 90%). 2. Prvi znaqajniji rezultati Teorije grafova nakon Ojlerovih su stigli polovinom 19. veka. Kirhofova teorema za matrice i stabla i Kejlijeva teorema (o oj emo kasnije). Oba su stigla direktno iz primena. Fiziqar Kirhof je svoje tvree pokazao 1947. godine i ono mu je posluilo za izraqunavae jaqina elektriqnih struja u granama nekog elektriqnog kola (jer su nezavisni ciklusi u potpunosti odreeni jednim razapiuim stablom). Navedimo kako glasi ovo tvree. Broj razapiuih stabala t(G) grafa G jednak je bilo kom kofaktoru Laplasove matrice L. Ova formulacija moda nije najjasnija, pa emo dati alternativnu formulaciju Kirhofova teorema za matrice i stabla. Za proizvone s, t ∈ {1, 2, . . . , n} broj razapiuih stabala t(G) grafa G jednak je (−1)s+t puta determinanta matrice koja se dobija brisaem vrste s i kolone t iz matrice L (matrica L = D −A, gde je A matrica susedstva grafa G, a D je dijagonalna = j ). matrica sa stepenima odgovarajuih qvorova, tj. dii = d(vi ) i dij = 0 , za i
8
4. TEORIJA GRAFOVA 3. F. Nauk (nem. F. Nauck) je 1850. godina, rexio Problem 8 dama (naveo svih 92 rexea). Zanimivo je da je quveni Gaus nije naxao sva rexea, nego samo 72. Danas se ovkvi problemi tretiraju raqunarom, ali je zanimivo da problem razmextaa dama u opxtem sluqaju (kada se umesto obiqne xahovske ploqe 8 × 8 posmatra generalisana xahovska ploqa n × n) nije rexen. Ovo je jox jedan od problema nastao iz takozvane ,,rekreativne matematike“. Iako je bio poznat i dosta ranije, Problem 8 dama je prvi put objaven 1848. godine u qasopisu ”Berliner Schachzeitung”. Ovaj problem glasi: Na koliko naqina je mogue postaviti 8 dama na xahovsku tablu tako da se meusobno ne napadaju? Svakoj xahovskoj figuri moe se pridruiti jedan graf na sledei naqin. Neka poa xahovske table predstavaju qvorove grafa. Iz qvora x ide grana ka qvoru j ako sa poa x data figura (u naxem sluqaju dama) moe da pree na poe y . Ovo je jedna veza teorije grafova i xaha. Druga ihova veza dolazi iz Teorije igara. Prema Teoriji igara, xahovska igra se predstava grafom qiji su qvorovi pojedine xahovske pozicije. Ovaj pristup je veoma bitan jer se koristi u pisae raqunarskih programa za igraa xaha. Na osnovu pojedinih podgrafova ovog grafa raqunar proceuje poziciju i bira koji je najboi potez koji moe da odigra u kasnijim delovima partije (za otvarae koristi ogromne baze poteza koji su razvi jani za otvarae xahovske partije — jox pre raqunara postojala je Xahovska enciklopedija otvaraa, koja je imala 5 tomova!). Kasnije emo uvesti grafovsku terminologiju vezanu za problematike poloaja xahovskih figura na tabli (unutraxa i spoaxa stabilnost grafa) i tada ovaj problem preveden na ,,grafovski jezik“ glasi: Koliko ima najveih unutraxe stabilnih skupova u grafu pridruenom xahovskoj figuri dami? Sada emo navesti rexea ovog problema. Nauk je dobio sva 92 rexea, koja se mogu dobiti od narednih 12 osnovnih rexea rotiraem (rotacijom) i ogledaem (simetrijom) xahovske table: 1◦ 2◦ 3◦ 4◦ 5◦ 6◦
A1, B5, C8, D6, E3, F7, G2, A1, B6, C8, D3, E7, F4, G2, A2, B4, C6, D8, E3, F1, G7, A2, B5, C7, D1, E3, F8, G6, A2, B5, C7, D4, E1, F8, G6, A2, B6, C1, D7, E4, F8, G3,
H4 H5 H5 H4 H3 H5
7◦ 8◦ 9◦ 10◦ 11◦ 12◦
A2, B6, C8, D3, E1, F4, G7, H5 A2, B7, C3, D6, E8, F5, G1, H4 A2, B7, C5, D8, E1, F4, G6, H3 A3, B5, C2, D8, E1, F7, G4, H6 A3, B5, C8, D4, E1, F7, G2, H6 A3, B6, C2, D5, E8, F1, G7, H4
9
4.1. ISTORIJAT TEORIJE GRAFOVA Na prethodnoj slici levo je prikazano prvo od gore navedenih rexea. Sada emo navesti jox nekoliko zanimivih xahovskih problema.
Xahovska figura mahara (ponegde se naziva i ,,superdama“) je figura koja se istovremeno kree kao dama i skakaq. Zanimiva igra (tzv. maharaa) je vezana za ovu figuru. Beli ima samo jednog maharau, a crni sve figure, koje se kreu i nalaze na poqetku prema pravilima xahovske igre. Beli je pobednik ako matira crnog, a crni ako pojede maharu. Problem sliqan prethodnom je: Na koliko naqina je mogue postaviti 10 maharaa na xahovsku tablu 10 × 10? M. Risti je pokazao pomou raqunara da je to mogue na taqno 4 naqina. U xahovskoj literaturi poznat je i Problem 5 dama. On glasi: Koliko je najmae dama potrebno postaviti na xahovsku tablu (8 × 8) da bi sva poa bila napadnuta? (Podrazumeva se da dama napada i poe ne kojem se nalazi!) Odgovor je: ,,Potrebno je najmae 5 dama“. Postava se pitae na koliko naqina je mogue postaviti tih 5 dama. Ukupno postoji 4860 rexea, koja je mukotrpnim prebrojavaem naxao Sili (ma. K. Szily) 1902. godine. Jedno rexee je dato na prethodnoj slici desno. Rexea problema 5 dama predstavaju minimalne dominirajue skupove u grafu pridruenom xahovskoj figuri dami. 4. Kejli je engleski matematiqar koji je 1857. godine uveo u matematiku pojam stabla. Koncept stabla su koristili fon Staut (nem. Karl von Staudt, 1798-1867; u Geometrie die Lage ) i Kirhof desetak godina ranije, ali je Kejli (koji nije bio upoznat sa ovim ranijim rezultatima) ponovo otkrio ovaj pojam i bio je prvi koji je iskoristio ovaj pojam u pisanom radu. Skoro u isto vreme (oko 1859.) otkrivene su strukturne formule hemijskih jediea. Kejli je naxao vezu izmeu ova 2 pojma (on je povezao stabla i strukturne formule alkana – jediea formule C n H 2n+2 ) i u radu ,,O matematiqkoj teoriji izomera“ iz 1874. godine je postavio kamen temeac nauqne discipline Hemijske teorije grafova. Na sledeoj slici su 2 alkana koji imaju formulu C 6 H 14 (imaju istu formulu – oni su izomeri) i odgovarajua stabla (kod kojih su qvorovi ugenikovi atomi, a grane veze meu ima).
H
H H H H
H
H C C C C C C H H
H H H H
H
H HH C H H
H
H C C C C H H
C H H HH
H
w w w w w w w
w w w w w
Kejli je pokuxao da pronae broj izomera I n alkana C n H 2n+2 , nije uspeo u tome, mada je dao nekoliko vanih rezultata vezanih za prebrojavae stabala. Do rexea ovog problema se doxlo mnogo kasnije – broj izomernih alkana su odredili 1931. godine hemiqari Hinze i Bler (eng. Henze, Blair), a opxti metod za rexavae ovakvih enumerativnih problema je pronaxao maarsko-ameriqki matematiqar or Poa 1937. godine. Kejlijev metod je bio veoma robustan, ali mu ordan (fra. Marie Ennemond Jordan, 1838-1922) znaqajno pojednostavio procedure uvodei pojmove centroida i bicentroida, odnosno centra i bicentra, u datom stablu. Na Kejlijeve rezultate su se nadovezali engleski matematiqari Silvester i Kliford (eng. Sylvester, Clifford). Da bi predstavio preko diagrama vezu izmeu hemijskih atoma i binarnih kvantova (eng. bynary quantics ) je uveo grafiqku notaciju, tj. krae reqeno grafove. Silvester je prvi iskoristio req graf (u smislu Teorije grafova) u jednoj priblexki o teoriji invarijanti u hemiji.
10
4. TEORIJA GRAFOVA Kasnije, 1889. godine, Kejli je saopxtio svoju formulu za broj oznaqenih stabala sa n qvorova, tj. rekao je da ih ima nn−2 . Meutim, on je proverio samo za vrednosti n 5. Dokaz je kasnije, 1918. godine, dao Prifer (nem. H.Pr¨ufer). Ali ni to tvree nije prvi otkrio Kejli — do ega je 1860. godine doxao Karl Borhart (neg. Carl Borchardt, 1817-1880) a Kejli je potpuno nezavisno od ovog rezultata doxao do formule koja po emu nosi ime 19 godina kasnije. Od tada je naeno mnoxtvo razliqitih dokaza. Qak je 1970. godine Kanaanin on Mun (eng. John W. Moon) napisao qitavu kigu o prebrojavau razapiuih stabala – Counting Labelled Trees . 5. Engleski matematiqar ser Vilijam Hamilton je 1859. godine sastavio zanimivu slagalicu, koja je koristila ivice regularnog dodekaedra (taqnije grana ravanskog grafa koji reprezentuje dodekaedar). Prema emu je kontura koja prolazi kroz sve qvorove grafa taqno jednom (tako da ni kroz jednu granu ne prolazi vixe od jedanput) dobila ime — Hamiltonova kontura. Na narednoj slici (levo) je prikazan graf dodekaedra sa odgovarajuom Hamiltonovom konturom (niz qvorova 1 − 2 − 3 − . . . − 19 − 20 − 1).
I pre Hamiltona su se sliqnim problemima, koji su doxli iz rekreativne matematike, bavili mnogi matematiqari. Najpoznatiji takav problem je Problem koiqkog skoka kojim su se bavili i Ojler, Moavr, Vandermond (fra. Moivre, Vandermonde) i Kirxak (nem. K¨urschak). Na goroj slici desno je prikazano jedno rexee na klasiqnoj xahovskoj tabli 8 × 8. Formuliximo taj problem. Da li je mogue skakaqem obii sva poa xahovske table, tako da se svako poe obie taqno jedanput? Sada emo dati i grafovsku formulaciju Problema koiqkog skoka. Da li u grafu pridruenom skakaqu postoji Hamiltonov put? O Problemu koiqkog skoka postoji obimna literatura. Ispitivana je ne samo egzistencija rexea na xahovskim tablama razliqitih dimenzija, ve i naqin konstrukcije i broj rexea. Dokazano je da Problem koiqkog skoka ima rexee na svim pravougaonim tablama dimenzija m × n za m, n 3, izuzev tabli 3 × 3, 3 × 5, 3 × 6 i 4 × 4. Iako rexee Hamiltonove slagalice nije mnogo texko pronai, matematiqari su i dan danas zaokupeni problemima vezanim za Hamiltonove konture, poput onih koji trae potrebne i dovone uslove da bi graf posedovao Hamiltonovu konturu ili Hamiltonov put. Najpoznatije takve teoreme su dali Redei (ma. R´edei), Dirak, Ore (Ore) i Poxa (ma. rm Posa). Jox jedan veoma bitan problem je povezan sa Hamiltonovom konturom — to je Problem trgovaqkog putnika. Dat je skup od n gradova koje trgovaqki putnik treba da poseti po jedanput, takvim redosledom da troxkovi puta budu minimalni. Sada emo navesti i grafovsku formulaciju Problema trgovaqkog putnika. U zadatom teinskom grafu odrediti Hamiltonovu konturu najmae teine.
11
4.1. ISTORIJAT TEORIJE GRAFOVA
Ovaj klasiqan problem Teorije grafova je dobio znaqajnu pau i u Operacionim istraivaima, kao i kompjuterstvu (eng. computer science). Kako sam problem traea minimalne Hamiltonove konture iziskuje mnog vremena (qak i raqunarskog!) do danas je pronaeno mnoxtvo heuristika koje daju priblino optimalno rexee Problema trgovaqkog putnika. Za rexavae Problema trgovaqkog putnika koristi se metoda granaa i odluqivaa, koja se naziva i implicitna enumeracija. Za razliku od eksplicitne enumeracije (kod kojih probamo sve mogue permutacije skupa qvorova), ovde prostor moguih rexea delimo na mae delove (granae) i to vixe puta pri qemu se pojedini delovi prostora rexea odbacuju na osnovu procene vrednosti funkcije koja se minimizira (ograniqavae). Dokazano je da je Problem trgovaqkog putnika N P -potpun problem. Svi poznati algoritmi = N P . za NP -potpune probleme imaju eksponencijalnu sloenost. To je u vezi sa hipotezom P Poznato je da ako bi za jedan N P -potpun problem postojao polinomijalni algoritam, tada bi postojao polinomijalni algoritam za svaki N P -problem. Generalizacije problema trgovaqkog putnika naxle su primene u radu robotskih maxina koji obrauju matiqne ploqe raqunara, ali i u svemirskim istraivaima. Npr. satelit Rosat, koji je zajedniqki projekat SAD, Engleske i Nemaqke, u periodu od 1990. do 1998. godine obilazio je oko planete Zeme. On je nosio teleskop koji je merio koliqinu X -zraqea koje dolazi sa zvezda. Da bi uxtedeli i vreme i energiju koju troxi teleskop, pribegnuto je kombinatornoj optimizaciji za traee Hamiltonove konture kroz nekoliko miliona zvezda. Tim postupkom je posao obaven za duplo krae vreme. 7. Problem planarnih grafova (tj. koji se grafovi mogu predstaviti u ravni, tako da im se grane ne seku) je bio jedan od najzanimivijih otvorenih problema teorije grafova 20-tih godina proxlog veka. Poski matematiqar Kuratovski je 1930. godine godine klasifikovao sve planarne grafove, dokazavxi (po emu kasnije nazvanu) Teoremu Kuratovskog o planarnim grafovima. Graf je planaran ako i samo ako kao svoju potpodelu ne sadri ni pentagraf K 5 , ni bitri-graf K 3,3 . 2 3
6
2
5
1
4
3 1 4 5
15. Problem 4 boje su rexili Kenet Apel i Volfgang Heken. Oni su 1976. godine zamrxenom kompjuterskom analizom koja je sadrala analizu 1936 osnovnih konfiguracija. ihov dokaz je veoma dug i komplikovan i oslaa se na teorijske rezultate niza matematiqara koji su objavivani prethodnih decenija, kao i na znaqajan rad raqunara. Tada je utroxeno oko 1200 qasova (50 dana!) raqunarskog vremena. Danas je neizvesno da li e biti mogue dokazati Problem 4 boje koji se ne poziva na rad raqunara. Problem 4 boje tvrdi da se svaka geografska karta moe obojiti sa 4 boje tako da svaka drava bude obojena jednom od boja i da susedne drave ne budu obojene istom bojom. Pod susednim dravama se podrazumevaju drave koje imaju zajedniqku graniqnu liniju (a ne one koje imaju jednu ili vixe izolovanih zajedniqkih graniqnih taqaka). Takoe, smatra se da je celokupna teritorija jedne drave iz jednog dela (tj. nije dozvoeno da se jedna drava sastoji iz vixe odvojenih delova, xto je sluqaj kod nekih stvarnih drava). Ovaj problem se odnosi ne samo na stvarne geografske karte, ve na sve karte koje se mogu zamisliti (tj. treba ga pokazati za proizvonu kartu). Ovo je dugo bio jedan od najpoznatijih nerexenih problema teorije grafova izmeu ostalog jer ima i burnu i zanimivu istoriju. Engleski matematiqar Fransis Gutri (eng. Francis Guthrie, 1831-1899) je istraivao ovaj problem negde oko 1850. godine. Gutri se zainteresovao za opxti problem, nakon xto je obojio sa 4 boje mapu Engleske (tj. ene okruge). Ubrzo nakon
12
4. TEORIJA GRAFOVA toga on je pokazao Problem 4 boje svom mlaem bratu Frederiku (eng. Frederick Guthrie, 18331866), koji je bio student Avgusta Demorgana (eng. Augustus DeMorgan, 1806-1871). Demorgan je 1952. godine saopxtio problem ser Vilijamu Hamiltonu (eng. sir William Hamilton, 18051865), kod koga je ostao nezapaem narednih 25 godina. Tada, 1878. godine, nauqna zajhednica je upoznata sa Problemom 4 boje, kroz saopxtee Artura Kejlija na sastanku Londonskog druxtva matematiqara (eng. London Mathematical Society). Sledee, 1979. godine, Kejli je formulisao problem u prvoj svesci Radova Kraevskog druxtva geografa (eng. Proceedings of the Royal Geographical Society ). Ubrzo nakon toga je britanski advokat (i amater–matematiqar) ser Alfred Kemp (eng. sir Alfred Kempe, 1849-1922) dao dokaz koji nije dovoen u pitae vixe od decenije. Ipak, 1890. godine, britanski matematiqar Hivud (eng. Percy John Heawood , 18611955) je pronaxao grexku u Kempovom radu. Kempov ,,dokaz“ je svakako najpoznatiji, ali nije jedini u literaturi se u posledih stotiak godina pojavilo vixe ,,dokaza“ koji su se odmah ili nakon nekog vremena pokazali netaqnim. Ovaj dokaz je bitan jer se ogovom preradom pokazuje slabiji Problem 5 boja (tj. da se svaka karta moe obojiti sa 5 boja). Progres u istraivau problema 4 boje je bio veoma spor. 1913. godine Birhof (nem. Birkhoff ) je pokazao da su odreene konfiguracije karte reducibilne, u smislu da se bojee ostatka karte u 4 boje moe proxiriti na bojee cele karte. Ova ideja sa reducibilnoxu se pokazala kao glavna u dokazu ovog tvrea. 1922. godine Frenklin (eng. Franklin) je iskoristio reducibilnost da dokae teoremu za karte koje sadre ne vixe od 25 drava. U narednih 40-tak godina taj broj je poboxan na 95 drava. Konaqno, 1976. godine, su Apel, Heken i Koh (eng. Koch), uz korixee ideja Hixa (eng. Heesch), rexili Problem 4 boje.
13
4.2. OSNOVNI POJMOVI I TVREA
4.2
Osnovni pojmovi i tvrea Teorije grafova
DEFINICIJA 4.2.1. Graf Γ je ureeni par (V, E ). Elementi skupa V se zovu qvorovi (eng. vertex , mn. vertices), a elementi skupa E grane (eng. edge, mn. edges) grafa G. Za dati graf Γ, skup qvorova se oznaqava sa V (Γ), a skup grana sa E (Γ).
Najqexe emo uzimati da je u grafu broj qvorova |V (Γ)| = n, a broj grana |E (Γ)| = m (ako se ne naglasi drugaqije). Multigrafovi su grafovi kod kojih se izmeu dva qvora nalazi vixe od jedne grane (i samim tim E vixe nije skup nego multiskup). Tada govorimo o vixestrukim granama izmeu 2 fiksirana qvora. Najqexe emo se baditi sa neorijentisanim grafovima bez peti (peta je grana koja ima i poqetak i kraj u istom qvoru) i vixestrukih grana (tj. E ⊆ V 2 , gde je V 2 skup svih dvoelementnih podskupova skupa V ). Takvi grafovi se nazivaju prosti grafovi .
DEFINICIJA 4.2.2. Dva qvora neorijentisanog grafa bez peti, u i v, su susedni ako su spojeni granom e = {u, v }. Za qvor u i granu e kaemo da su incidentni (tada su i v i e incidentni). Grana e = {u, v } se skraeno pixe e = uv . Dve grane su susedne ako imaju zajedniqki qvor. Grana koja spaja qvor sa samim sobom naziva se peta . Broj susednih qvorova qvoru v zove se stepen qvora v i oznaqava sa d(v) (skraeno od engleske reqi degree ; ponegde se stepen qvora naziva i valency ). Qvor koji nema suseda nazivamo izolovan qvor . Dva susedna qvora su kraje taqke grane koja ih spaja. Stepen qvora moe se definisati i kao broj grana koje se stiqu u tom qvoru. Najmai stepen qvora u grafu G oznaqavamo sa δ(Γ), tj. δ(Γ) = min d(u). Najvei stepen qvora u u∈V
grafu Γ oznaqavamo sa ∆(Γ), tj. ∆(Γ) = max d(u). u∈V
Graf Γ je r-regularan ako je stepen svakog qvora jednak r (za r-regularne grafove vai jednakost δ(Γ) = ∆(Γ) = r). Kod orijentisanih grafova ili digrafova , su sve grane e = (u, v) orijentisane, tj. bitan je redosled qvorova. Za granu e = (u, v) kaemo da vodi iz qvora u u qvor v (tj. da izlazi iz qvora v , a ulazi u qvor u). Izlazni stepen qvora v, u oznaci d+ (v), je broj grana koje vode iz qvora v. Ulazni stepen qvora v, u oznaci d− (v), je broj grana koje vode u qvor v . Peta se obiqno smatra i ulaznom i izlaznom granom za odgovarajui qvor. Uskup (engleski inset ), I (v) = {x | (x, v) ∈ E }, je skup svih qvorova iz kojih vodi grana u qvor v. Vanskup (engleski outset ), O(v) = {x | (v, x) ∈ E }, je skup svih qvorova u koje vodi grana iz qvora v. Vidimo da je d− (v) = |I (v)| i d+ (v) = |O(v)|.
Sada emo navesti nekoliko teorema koje vae za stepene qvorova (neka je V = {v1 , v2 , . . . , vn } skup qvorova, a m broj grana grafa Γ). TEOREMA 4.2.3. stepena.
U neorijentisanom grafu Γ, koji ima n 2 qvora, postoje bar 2 qvora istog
Dokaz. Pretpostavimo suprotno da ne postoje 2 qvora istog stepena. Neorijentisan graf Γ ima n qvorova te kako svaki egov qvor v moe biti susedan sa nekim od preostalih n − 1 qvorova (iz V \ {v}) dobijamo da za stepen svakog egovog qvora v vai da je d(v) ∈ {0, 1, 2, . . . , n − 1}. Kako ne postoje 2 qvora istog stepena i kako ukupno ima n qvorova to e oni za stepene imati sve brojeve iz skupa {0, 1, 2, . . . , n − 1}. Ali tada imamo qvor qiji je stepen 0 (to je qvor koji nije susedan ni sa jednim od preostalih), kao i qvor qiji je stepen n − 1 (to je qvor koji je susedan sa svim ostalim qvorovima), xto je nemogue. Kako smo dobili kotradikciju, polazna pretpostavka da ne postoje bar 2 qvora istog stepena nije taqna, qime je tvree teoreme pokazano.
14
4. TEORIJA GRAFOVA
TEOREMA 4.2.4. U neorijentisanom grafu Γ vai da je zbir svih stepena qvorova jednak dvostrukom broju grana, tj. d(v1 ) + d(v2 ) + . . . + d(vn ) = 2m.
Dokaz. Stepen qvora predstava broj grana koje su incidentne sa datim qvorom. Stoga, ako saberemo sve stepene qvorova, mi emo prebrojati sve grane i to svaku 2 puta (po jednom kod svakog enog kraja). Time je tvree pokazano. TEOREMA 4.2.5.
U neorijentisanom grafu Γ broj qvorova neparnog stepena je paran.
Dokaz. Ovo tvree je direktna posledica prethodne teoreme, jer je broj na desnoj strani jednakosti paran, pa i zbir na levoj strani mora biti paran, xto je mogue samo ukoliko je broj qvorova neparnog stepena paran. Moemo dati i tvree koje nam kae da li postoji neorijentisani graf bez peti (tj. prost graf) sa datim stepenima qvorova. Navexemo ga bez dokaza. DEFINICIJA 4.2.6. Niz celih brojeva (d1 , d2 , . . . , dn ) je grafiqki ako postoji graf G sa skupom qvorova V (G) = {v1 , v2 , . . . , vn } tako da je dG (vi ) = di .
TEOREMA 4.2.7. Nerastui niz celih brojeva v = (d1 , d2 , . . . , dn ), gde je n − 1 d1 d2 · · · dn 0, je grafiqki ako i samo ako je niz v = (d2 − 1, d3 − 1, . . . , d d1 +1 − 1, dd1 +2 , . . . , dn ) grafiqki (tj. ako i samo ako je niz w, koji se dobija od v sortiraem tako da bude nerastui, grafiqki).
Sada emo navesti i jedno tvree vezano za stepene qvorova u orijentisanom grafu. TEOREMA 4.2.8.
U orijentisanom grafu Γ vai
d− (v1 ) + d− (v2 ) + . . . + d− (vn ) = m = d+ (v1 ) + d+ (v2 ) + . . . + d+ (vn ).
Dokaz. Dokaz je analogan dokazu Teoreme 4.2.4, samo xto sada kad brojimo ulazne stepene, brojimo grane koje ulaze u qvor i to nam daje prvu jednakost d− (v1 ) + d− (v2 ) + . . . + d− (vn ) = m, dok kad brojimo izlazne stepene, brojimo grane koje izlaze iz qvorova, xto je drugi deo jednakosti, d+ (v1 ) + d+ (v2 ) + . . . + d+ (vn ) = m. Sada emo navesti neke od osnovnih tipova grafova.
Prazan graf , K n , sa n qvorova je graf koji nema nijednu granu. Kompletan graf , K n , sa n qvorova je graf kod koga je svaki qvor susedan sa svim ostalim. Kompletan bipartitan graf , K m,n , je graf koji ima 2 komponenete (jednu sa m, a drugu sa n qvorova), takav da qvorovi iz iste komponente nisu spojeni granom, dok su svi qvorovi iz razliqitih komponenti spojeni granom. Bipartitan graf je bilo koji podgraf kompletnog bipartitnog grafa. Ovaj pojam se moe proxiriti na k-partitne grafove , tako xto imamo k komponenti umesto 2. Put P n je povezan graf koji ima sve qvorove stepena 2, sem dva (,,kraja“) koji su stepena 1. Kontura C n je povezan graf koji ima sve qvorove stepena 2. Toqak W n = K 1 ∨ C n−1 je graf koji se sastoji od konture C n−1 i jox jednog qvora koji je povezan sa svim ostalim (ako taj qvor stavimo u centar konture dobijamo sliku koja vizuelno podsea na toqak!). Zvezda S n = K 1 ∨ K n−1 je graf koji ima 1 qvor koji je povezan sa svim ostalim i pored tih grana nema drugih.
DEFINICIJA 4.2.9.
Ove grafove emo prikazati na sledeoj slici.
15
4.2. OSNOVNI POJMOVI I TVREA 1 2 3
1
5
10
1
2
3
2
2
4 3
9
4
8
3
7
3 4
8 4 5
K 10
4
5
6
7
K 3
5
,
8
2
9 5
7 6
2
10
1
3
9
2
1
8 6
5
P 5
2,3,3
,
7
1
7
K 1
3
4
1 6
4
6
7 6
5
5
C 10
W 7
S 7
DEFINICIJA 4.2.10. Graf Γ = (V , E ) je podgraf grafa Γ = (V, E ) ako vai V ⊆ V i E ⊆ E . Graf Γ je nadgraf grafa Γ ako je G podgraf grafa Γ. Graf Γ = (V , E ) je indukovani podgraf grafa Γ = (V, E ) ako vai V ⊆ V i E = E ∩ V 2 . Za graf Γ se kae i da je podgraf indukovan podskupom qvorova V . U stvari, podgraf Γ se dobija od Γ tako xto iz Γ izbacimo sve qvorove koji nisu u skupu qvorova V zajedno sa svim granama koje su im susedne (tj. ostaju samo grane koje povezuju qvorove iz V ). Podgraf indukovan skupom grana, a na istom skupu qvorova se naziva razapiui podgraf , a ponegde u literaturi (kod naxeg akademika Dragoxa Cvetkovia, koji koristi termin podgraf za podgraf indukovan podskupom qvorova) naziva i delimiqni ili parcijalni graf grafa Γ = (V, E ). Taqnije, to je graf H = (V, F ) za koji je F ⊆ E . U stvari, delimiqni graf dobijamo od grafa Γ tako xto ostavimo sve qvorove, a izbacimo grane koje nisu u skupu F . Kod istog autora podgraf se naziva delimiqni podgraf .
Binarna relacija ,,biti podgraf“ definisana u skupu svih grafova predstava relacije parcijalnog ureea u tom skupu (ova relacija nije relacija totalnog poretka). Ako je e ∈ E , onda se sa Γ − e oznaqava podgraf (V, E \ {e}), tj. graf koji se dobija od grafa Γ / E , onda se sa Γ + e oznaqava nadgraf (V, E ∪ {e}), tj. graf koji se izbacivaem grane e. Ako je e ∈ dobija od grafa Γ dodavaem grane e. Ako je S ⊆ V , onda se sa Γ − S oznaqava podgraf indukovan podskupom qvorova V \ S . Ako je S = {u}, tada se skraeno pixe Γ − u. DEFINICIJA 4.2.11. Za grafove Γ1 = (V 1 , E 1 ) i Γ2 = (V 2 , E 2 ) kaemo da su izomorfni ako postoji bijekcija f : V 1 → V 2 tako da je {u, v} ∈ E 1 ako i samo ako je {f (u), f (v)} ∈ E 2 (analogno ako imamo orijentisane grane). Funkcija f se naziva izomorfizam grafova, a qienicu da su grafovi Γ1 i Γ2 izomorfni oznaqavamo sa Γ1 ∼ = Γ2 (koristiemo i Γ1 = Γ2 kada to ne moe dovesti do zabune).
DEFINICIJA 4.2.12. Graf Γ je komplement grafa Γ ako je V (Γ) = V (Γ) i 2 qvora su susedna u Γ ako i samo ako nisu susedni u Γ. Graf je samokomplementaran ako je izomorfan sa svojim komplementom.
PRIMER 4.2.13.
Dati primer jednog samokomplementarnog grafa.
Rexee. Kontura C 5 predstava samokomplementaran graf. Na narednoj slici su predstaveni C 5 i C 5 . Jedan izomorfizam izmeu ova 2 grafa je dat sa f : V (C 5 ) → V (C 5 ), v v2 v3 v4 v5 f = 1 . v1 v3 v5 v2 v4 v v
1
v2
1
v5
v3
v4 C 5
v2
v5
v3
v4 C 5
K 5
Na posledoj slici je prikazan potpun graf K 5 koji se dobija kada bismo uzeli sve grane grafa C 5 (predstavene crnom bojom) i sve grane grafa C 5 (predstavene crvenom bojom).
16
4. TEORIJA GRAFOVA
DEFINICIJA 4.2.14. Za dati graf Γ = (V, E ), egov graf grana L(Γ) = (V 1 , E 1 ) je graf qiji qvorovi predstavaju grane grafa Γ, tj. V 1 = E , a dva qvora iz V 1 su susedna ako i samo ako su odgovarajue grane iz E susedne u grafu Γ. Operaciju pravea grafa grana moemo vixestruko ponavati, te stoga uvodimo i sledee oznake: L0 (Γ) = Γ, L1 (Γ) = L(Γ) i Lk+1 (Γ) = L Lk (Γ) .
PRIMER 4.2.15. Za graf Γ sa sledee slike levo odrediti egov graf grana L(Γ), graf grana 2 3 grafa grana L (Γ), L (Γ) i L4 (Γ). a
Rexee.
a
f
g
o
r
d
q
o
t
r s
t
m
l h
p
q
k
s
g
d c
p
k
f
b
n
j
n
i j
i
e
b c
e
m
u
l
h
u
Na prethodnoj slici su redom prikazani grafovi: Γ, L(Γ), L2 (Γ), L3 (Γ) i L4 (Γ). Kod grafa Γ smo oznaqili samo grane crvenom brojom, a kod L(Γ) plavom bojom odgovarajue qvorove da bismo naglasili ihovu vezu. To smo nastavili i kod sledeih grafova. DEFINICIJA 4.2.16. Za dati graf Γ = (V, E ), egov totalni graf T (Γ) = (V 2 , E 2 ) je graf qiji qvorovi predstavaju i qvorove i grane grafa Γ, tj. V 2 = V ∪ E , a dva qvora iz V 2 su susedna ako i samo ako su odgovarajui elementi iz V ∪ E susedni (ako su iz istog skupa), ili incidentni (ako je jedan iz V , a drugi iz E ).
PRIMER 4.2.17.
Odrediti totalni graf T (K 3 ) potpunog grafa K 3 . c
Rexee.
b
1 c
2
1 b
a
3
2
3
a
Kod grafa K 3 (koji je prikazan na slici levo) smo oznaqili i qvorove i grane, a kod T (K 3 ) samo qvorove da bismo naglasili ihovu vezu. Takoe je i naglaxen graf K 3 (crvenom bojom je prikazan na obe slike) da bi videli da je on podgraf grafa T (K 3 ). Takoe, i graf grana L(K 3 ) (predstaven plavom bojom na slici desno) je podgraf totalnog grafa T (K 3 ). DEFINICIJA 4.2.18.
Put duine k u digrafu je svaki niz grana i qvorova v0 , u1 , v1 , u2 , . . . , u k , vk
za koji vai da grana ui (i = 2, 3, . . . , k) poqie u qvoru vi−1 (u kojem se zavrxava prethodna grana ui−1 ), a zavrxava u qvoru vi (iz koga polazi sledea grana ui+1 ). Put moe vixe puta da prolazi istom granom ili kroz isti qvor, kao i kroz pete. Elementarni put ili prost put je put koji kroz svaki qvor grafa prolazi najvixe jedanput. Kruni put ili zatvoren put ili kontura je put koji se zavrxava u istom qvoru u kojem i poqie. Kod neorijentisanih grafova put qesto zadajemo i samo nizom qvorova kroz koje prolazi v0 , v1 , . . . , vk (naravno uzastopni qvorovi u putu su susedni u grafu!). Za ovakav put kaemo da je put duine k koji povezuje qvorove v0 i vk .
17
4.2. OSNOVNI POJMOVI I TVREA
Napomena. Izraze put i kontura koristimo u 2 razliqita konteksta. Prvi kontekst za put je graf P n koji smo opisali u Definiciji 4.2.9; drugi kontekst je za put koji smo dali u prethodnoj definiciji. Prvi kontekst za konturu je graf C n koji smo opisali u Definiciji 4.2.9; drugi kontekst je za elementarni kruni put (umesto izraza kontura ponekad se koristi i ciklus ; eng. cycle) koji smo dali u prethodnoj definiciji. Razlog je xto ovaj elementarni kruni put qini podgraf datog krafa koji je izomorfan sa grafom C k , xto je prvi kontekst (sliqno i kod puta). DEFINICIJA 4.2.19. Povezanost grafova. Qvorovi u i v grafa Γ su povezani ako u Γ postoji put qiji su kraji qvorovi u i v. Graf Γ je povezan ako su svaka dva egova qvora povezana. Graf Γ je nepovezan ako Γ nije povezan. Komponente grafa Γ su egovi maksimalni povezani podgrafovi. ihov broj oznaqavamo sa c(Γ). Neki autori koriste oznaku ω(Γ). U grafu Γ qvor v je vezivni qvor (ponegde se naziva i artikulacioni qvor ; eng. cut vertex ili articulation vertex ) ukoliko se egovim uklaaem (sa svim granama koje su incidentne sa im) poveava broj komponenti, tj. c(Γ) < c(Γ − v). Grana e je most (eng. bridge ili cut edge ili isthmus) u grafu Γ ako se enim uklaaem poveava broj komponenti, tj. c(Γ) < c(Γ − e).
Sada emo uvesti neke pojmove samo za povezane grafove. DEFINICIJA 4.2.20. Ako su qvorovi u i v grafa Γ povezani, tada je rastojae dΓ (u, v) od qvora u do qvora v jednako duini najkraeg puta izmeu qvorova u i v . Dijametar grafa Γ = (V, E ) je dat sa D(Γ) = max dΓ (u, v). Ekscentricitet qvora u je Γ (u) = max dΓ (u, v). Radijus grafa Γ je u,v ∈V v ∈V X r(Γ) = min Γ (v). Rastojae qvora u je dΓ (u) = dΓ (u, v). v ∈V
v ∈V
Ekscentricitet qvora je rastojae qvora u od emu najudaenijeg qvora, dijametar povezanog grafa Γ jednak je najveem ekscentricitetu nekog qvora tog grafa, dok je radijus grafa Γ jednak je iznosu najmaeg ekscentriciteta. Rastojae qvora u jednako je sumi rastojaa izmeu qvora u i svih ostalih qvorova grafa Γ (obratiti pau da imamo 2 veoma sliqne oznake: d(u) predstava stepen qvora u, dok smo sa dΓ (u) oznaqili rastojae qvora u). Svi qvorovi grafa qiji je ekscentricitet jednak radijusu obrazuju centar grafa . Qvorove sa najmaim ekscentricitetom moemo shvatiti kao svojevrsni centar grafa, dok qvorove sa najveim ekscentricitetom, analogno tome, moemo shvatiti kao periferiju grafa. PRIMER 4.2.21. Odrediti rastojaa izmeu svih qvorova u grafu Γ sa sledee slike, kao i ekscentricitete qvorova. f
b
a e
d
c
g
Rexee. Rastojaa izmeu qvorova u grafu Γ su data u narednoj tabeli. U posledoj koloni se nalaze ekscentriciteti qvorova.
a b c d e f g
a 0 1 1 2 3 4 4
b 1 0 2 1 2 3 3
Dijametar ovog grafa je 4, a radijus je 2.
c 1 2 0 1 2 3 3
d 2 1 1 0 1 2 2
e 3 2 2 1 0 1 1
f 4 3 3 2 1 0 2
g 4 3 3 2 1 2 0
ecc(v) 4 3 3 2 3 4 4
18
4. TEORIJA GRAFOVA
Napomena. Matrica koja je dobijena u prethodnom primeru,
0 1 1 D(Γ) = 2 3 4 4
1 0 2 1 2 3 3
1 2 0 1 2 3 3
2 1 1 0 1 2 2
3 2 2 1 0 1 1
4 3 3 2 1 0 2
4 3 3 2 1 2 0
naziva se matrica rastojaa grafa (i sa om emo se sresti kasnije). Primetimo da u ovom konkretnom sluqaju vai da je D(Γ) = 2 · r(Γ), meutim, u opxtem sluqaju vai samo da je r(Γ) D(Γ) 2 · r(Γ). Primer grafa za koji vai da jednakost izmeu radijusa i dijametra je ciklus C n , n 3, za koji je r(C n ) = D(C n ) = n2 .
Postava se pitae xta ako graf Γ nije povezan!? Rastojae izmeu qvorova se tada moe definisati za svaki par qvorova koji pripada istoj komponenti povezanosti. Meutim, ako se qvorovi u i v nalaze u razliqitim komponentama grafa Γ, tada se po konvenciji uzima da je dΓ (u, v) = ∞. U tom sluqaju su i dijametar i radijus grafa Γ nedefinisani (odnosno, moemo uzeti da su po konvenciji i oni jednaki ∞).
19
4.3. PREDSTAVAE GRAFOVA
4.3
Razni naqini predstavaa grafova
Matrica susedstva grafa
DEFINICIJA 4.3.1. Graf moe biti predstaven i kvadratnom matricom qiji je red jednak broju qvorova grafa. Element aij jednak je broju grana koje polaze iz qvora vi , a zavrxavaju se u qvoru vj . Ova matrica se naziva matrica susedstva grafa i obeleava se sa A.
Ako dopustimo da dva qvora mogu biti spojena najvixe jednom granom iste orijentacije, tada elementi matrice A mogu biti samo 0 ili 1. Matrice sa ovakvim elementima nazivaju se dijadske ili sociometrijske matrice . Elementi matrice susedstva multigrafa su prirodni brojevi i nula. Matrica susedstva neorijentisanog grafa je simetriqna matrica, tj. za u vai A = AT . X aii . Graf nema peti Trag matrice A je jednak zbiru elemenata na glavnoj dijagonali, tr A = n
i=1
ako i samo ako je tr A = 0.
DEFINICIJA 4.3.2. Matrica A je sliqna sa matricom B ako postoji regularna (nesingularna) matrica X takva da je A = X −1 BX , i tada pixemo A ∼ B .
Napomena. Matrica susedstva grafa A zavisi od numeracije qvorova, ali se moe pokazati da su sve matrice susedstva jednog grafa meusobno sliqne. U ovom sluqaju je matrica X permutaciona matrica , tj. matrica koja u svakoj vrsti i svakoj koloni ima taqno jedan element 1 i sve ostale 0. PRIMER 4.3.3. Na sledeoj slici imamo dva izomorfna grafa Γ1 i Γ2 (tj. imamo jedan isti graf sa 2 razliqite numeracije qvorova). Odrediti ihove matrice susedstva. v1
v2
Γ1
v3
v2
v3
v1
Γ2
‚‚ ‚0 1 Rexee. Ovim grafovima odgovaraju razliqite matrice susedstva. To su A1 = ‚‚1 0 ‚0 1 ‚‚ ‚‚ ‚‚ ‚‚ ‚0 0 1‚ ‚1 0 0‚ A2 = ‚‚0 0 1‚‚, ali su one sliqne jer postoji matrica X = ‚‚0 0 1‚‚, takva da je A1 = X −1 A2 X . ‚1 1 0‚ ‚0 1 0‚ grafa Γ1 i Γ2 predstavaju isti graf – put sa 3 qvora, P 3 .
‚
0‚ ‚ 1‚ ‚ 0‚
i
Oba
TEOREMA 4.3.4. Grafovi Γ1 i Γ2 su izomorfni ako i samo ako su ihove matrice susedstva permutaciono sliqne, tj. ako i samo ako postoji permutaciona matrica P takva da je AΓ2 = P AΓ1 P −1 .
(k)
TEOREMA 4.3.5. Broj puteva duine k koji spajaju qvorove vi i vj jednak je elementu aij , tj. elementu na poziciji (i, j) u matrici Ak .
Dokaz. Tvree emo pokazati matematiqkom indukcijom po k. Za k = 0 (A0 = I ) i za k = 1 (A1 = A je matrica susedstva) tvree je taqno. Neka je tvree taqno za k = K . X (K ) (K +1) (K +1) = ai t atj , zakuqujemo da je aij Iz jednakosti aij jednak broju puteva duine K + 1 n
t=1
koji spajaju qvorove vi i vj . Na osnovu Principa matematiqke indukcije dobijamo da tvree vai za svaki k ∈ N.
20
4. TEORIJA GRAFOVA
Lista susedstva grafa Ve smo rekli da se grafovi mogu upotrebiti za modelirae i rexavae mnogih praktiqnih problema. Takve probleme rexavamo uz pomo raqunara i posebno za to pisanih programa, a kao prvi korak neophodno je da znamo kako se graf moe predstaviti u raqunaru. Postoje dva uobiqajena naqina za to: pomou listi susedstva i pomou matrice susedstva . DEFINICIJA 4.3.6. Za svaki qvor u grafa Γ = (V, E ), lista susedstva lu sadri sve qvorove koji su susedni sa im u Γ, lu = v ∈ V : {u, v} ∈ E
Svako od ovih predstavaa ima svoje mane i prednosti. Osnovne razlike meu ima tiqu se potroxe memorije i brzine kojom se moe ustanoviti da li su dva qvora susedna. Liste susedstva efikasno koriste memoriju jer je potrebno uskladixtiti svega 2|E | podataka, meutim, kada elimo da ustanovimo da li su qvorovi u i v susedni, moramo da pretraimo celu listu suseda za qvor u (ili qvor v). S druge strane, matrica susedstva sadri |V |2 podataka, bez obzira koliki je broj grana u grafu, ali se zato susedstvo qvorova u i v ispituje uvek u konstantnom vremenu pomou vrednosti Au,v . S obzirom da je nexto jednostavnije napisati programe koji koriste matrice susedstva, one su danas najzastupenije u praksi. Meutim, liste susedstva dobijaju primat kada treba smestiti graf sa velikim brojem qvorova, a relativno malim brojem grana (u poreeu sa |V |2 ). PRIMER 4.3.7. Odrediti liste susedstva svih qvorova grafa Γ prikazanog na sledeoj slici. Odrediti i matricu susedstva grafa Γ. f
b
a e
d
c
Rexee. u a b c d e f g
g
Liste susedstva i matrica susedstva grafa su date u sledeim tabelama. lu {b, c} {a, d} {a, d} {b,c,e} {d,f,g } {e} {e}
a b c d e f g
a 0 1 1 0 0 0 0
b 1 0 0 1 0 0 0
c 1 0 0 1 0 0 0
d 0 1 1 0 1 0 0
e 0 0 0 1 0 1 1
f 0 0 0 0 1 0 0
g 0 0 0 0 1 0 0
0 1 1 A= 0 0 0 0
1 0 0 1 0 0 0
1 0 0 1 0 0 0
0 1 1 0 1 0 0
0 0 0 1 0 1 1
0 0 0 0 1 0 0
0 0 0 0 1 0 0
21
4.3. PREDSTAVAE GRAFOVA
Matrica incidencije qvorova i grana U sluqaju orijantisanih i neorijentisanih grafova imamo razliqite matrice incidencije.
DEFINICIJA 4.3.8. Neka je Γ = (V, E ) neorijentisan graf kod koga je skup qvorova V (Γ) = {v1 , v2 , . . . , vn } i skup grana E = {e1 , e2 , . . . , em }. Tada je matrica incidencije qvorova i grana , R = [rij ] data sa rij =
1 0
qvor vi je incidentan sa granom ej . qvor vi nije incidentan sa granom ej
Ova matrica je matrica oblika n × m. Broj jedinica u i-toj vrsti matrice R jednak je broju grana incidentnih sa qvorom vi , tj. stepenu qvora vi , d(vi ). U svakoj koloni se nalaze po 2 jedinice, xto odgovara qienici da je svaka grana incidentna sa 2 qvora. Ilustrujmo ovaj pojam na grafu iz Primera 4.3.9. PRIMER 4.3.9.
Odrediti matricu incidencije qvorova i grana grafa Γ. f
b
a d
c
e
g
Rexee. a b c d e f g
ab 1 1 0 0 0 0 0
ac 1 0 1 0 0 0 0
bd 0 1 0 1 0 0 0
cd 0 0 1 1 0 0 0
de 0 0 0 1 1 0 0
ef 0 0 0 0 1 1 0
eg 0 0 0 0 1 0 1
1 1 0 R= 0 0 0 0
1 0 1 0 0 0 0
0 1 0 1 0 0 0
0 0 1 1 0 0 0
0 0 0 1 1 0 0
0 0 0 0 1 1 0
0 0 0 0 1 0 1
DEFINICIJA 4.3.10. Neka je Γ = (V, E ) orijentisan graf kod koga je skup qvorova V (Γ) = {v1 , v2 , . . . , vn } i skup grana E = {e1 , e2 , . . . , em }. Tada je matrica incidencije qvorova i grana , S = [sij ]n,m data sa
sij =
1 0 −1
ako grana ej izlazi iz qvora vi ako grana ej i qvor vi nisu susedni ako grana ej ulazi u qvor vi .
Ona se jox naziva i oznaqena (−1, 0, 1)-matrica incidencije qvorova i grana . Ova matrica je matrica oblika n × m. Broj −1 u i-toj vrsti matrice R jednak je broju grana koje ulaze u qvor vi , tj. ulaznom stepenu qvora vi , d− (vi ). Broj 1 u i-toj vrsti matrice R jednak je broju grana koje izlaze iz qvora vi , tj. izlaznom stepenu qvora vi , d+ (vi ). U svakoj koloni se nalaze po jedan element −1 i 1, xto odgovara qienici da je svaka grana izlazi iz taqno jednog qvora i ulazi u taqno jedan qvor.
22
4. TEORIJA GRAFOVA
Matrica rastojaa grafa Neka je graf Γ povezan. Tada moemo uvesti jox jednu matricu — to je matrica rastojaa izmeu qvorova u tom grafu. DEFINICIJA 4.3.11. Graf moe biti predstaven i kvadratnom matricom D(Γ) qiji je red jednak broju qvorova grafa. Element dij jednak je rastojau izmeu qvora vi i qvora vj . Ova matrica se naziva matrica rastojaa grafa.
Ako nam je poznata matrica rastojaa qvorova D(Γ) onda matricu susedstva A dobijamo tako xto sve elemente koji su vei od 1 zamenimo sa 0. Za obrnuti postupak postoji nekoliko algoritama (jedan emo kasnije dati). TEOREMA 4.3.12. od n − 1.
Najkrai put koji povezuje 2 qvora u grafu sa n qvorova ne moe biti dui
Dokaz. Pretpostavimo suprotno da je najkrai put P koji povezuje 2 qvora u i v duine s > n − 1. Tada se najkrai put P sastoji od s + 1 qvora (raqunajui i poqetni u i kraji v): P = u = v0 , v1 , v2 , . . . , vs−1 , vs = v. Ali kako je s + 1 > n , po Dirihleovom principu ovaj put sadri 2 ista qvora. Neka su to vi i vj , uz i < j . Uoqimo put P = v0 , . . . , vi , vj +1 , . . . , vs (dobijen izbacivaem dela puta izmeu 2 boravka u istom qvoru vi = vj ). Taj put je krai od P i povezuje qvorove v0 = u i vs = v, xto je u kontradikciji sa minimalnoxu puta P . Time je tvree pokazano. Matricu D(Γ) moemo dobiti od matrice susedstva A grafa Γ sa n qvorova na jedan od sledeih naqina:
• Dajkstrinim algoritmom moemo odrediti rastojae izmeu 2 fiksirana qvora u grafu, pa taj algoritam moemo vixestruko primeivati na sve parove qvorova u grafu; • Odrediti sve matrice I , A , A2 , A3 , . . . , An−1 , pa onda na poziciju dij matrice D(Γ) upisujemo broj k takav da se na pozicijama (i, j) u matricama I , A , A2 , . . . , Ak−1 nalazi 0, a u Ak je element vei od 0; • Flojd-Vorxalovim algoritmom. Sada emo navesti Flojd-Vorxalov algoritam. Prvo emo dati jednu napomenu. U prvom koraku ovog algoritma uvodimo oznaku ∞ (na kraju algoritma, ta e oznaka ostati za sve qvorove koji nisu povezani). Ako neka 2 qvora nisu povezana onda moemo rei je ihovo rastojae ,,beskonaqno“. Takoe razlog moemo nai i ako posmatramo neku elektriqnu xemu i ako prekinemo neku icu izmeu 2 qvora onda tu vixe nee tei struja iako imamo razliku potencijala izmeu ta 2 qvora (napon) te moemo rei da je izmeu ova 2 qvora ,,beskonaqna“ otpornost. U praktiqnim primena za ∞ moemo uzeti neki dovono veliki broj dosta vei od svih brojeva u A, npr. neki broj vei od n · max aij . 1i,j n
D(Γ) := A i 0 van dijagonale se zamene sa ∞ for k := 1 to n for i := 1 to n for j := 1 to n dij := min(dij , dik + dkj ) end for end for end for
Napomena. Flojd-Vorxalov algoritam smo dali tako da radi i za teinske grafove (tj. grafove kod kojih nisu iste ,,duine“ grana). Ovim algoritmom moemo utvrditi i da li je graf povezan. Ako i samo ako u matrici D(Γ) imamo neki element koji je jednak ∞ onda je graf Γ nepovezan.
4.4. OJLEROVI GRAFOVI
4.4
23
Ojlerovi grafovi
Tvree Ojlerove teoreme emo formulisati u jaqem obliku, za multigrafove (tj. i ako izmeu 2 qvora ima vixe od jedne grane). Jedan od razloga je i xto je graf koji odgovara mostovima u Kenigsbergu ustvari multigraf (drugi vaniji razlog je xto e nam dokazivae narednih teorema biti malo jednostavnije). Prosti grafovi (sa kojima najvixe radimo u ovoj kizi) su specijalni sluqaj multigrafova kod kojih izmeu svaka 2 qvora postoji jedna ili nijedna grana. Uvedimo nekoliko definicija koje su nam potrebne za naredne teoreme. DEFINICIJA 4.4.1. Ojlerova kontura multigrafa Γ je zatvorena staza koja sadri s ve grane iz Γ. (Multi)graf koji ima Ojlerovu konturu naziva se Ojlerov (multi)graf . Ojlerov put u multigrafu Γ je staza koja sadri sve grane iz Γ (moe biti i da nije zatvorena staza). (Multi)graf koji ima Ojlerov put naziva se poluojlerov (multi)graf .
Prvo emo dati jedno pomono tvree. TEOREMA 4.4.2.
Ako je u grafu Γ najmai stepen qvora δ 2, onda Γ sadri ciklus.
Dokaz. Pretpostavimo suprotno — da je Γ acikliqan. Tada je Γ xuma i svaka ena komponenta povezanosti H je stablo. Ali kako u svakom netrivijalnom stablu (ako je trivijalno sastoji se od jednog izolovanog qvora v i za ega treba da vai d(v) δ 2, xto je kontradikcija jer je d(v) = 0) prema tvreu za stabla u svakom stablu postoje bar 2 qvora stepena 1, dobijamo kontradikciju sa polaznom pretpostavkom δ 2, te G sadri ciklus. TEOREMA 4.4.3. Ojlerova teorema. Povezan multigraf sa bar jednom granom je Ojlerov ako i samo ako sadri sve qvorove parnog stepena.
⇒: Ako se kreemo po Ojlerovoj konturi, onda uvek kada nekom granom uemo u neki Dokaz. qvor, moramo koristiti neku drugu granu (koju jox nismo koristili!) da izaemo iz toga qvora. Kako kod Ojlerove konture moramo proi kroz sve grane (i na kraju se vratiti u polazni qvor) dobijamo da su stepeni svih qvorova parni. ⇐: Pretpostavimo da je stepen svakog qvora u povezanom multigrafu paran i pomou matematiqke indukcije (po broju grana) dokaimo da taj multigraf sadri Ojlerovu konturu. Za povezani multigraf sa 2 grane tvree je taqno (to je multigraf s s ). Pretpostavimo da je tvree taqno za sve multigrafove sa mae od m grana i posmatrajmo povezani multigraf Γ sa m grana kod koga su svi qvorovi parnog stepena. Prema prethodnoj lemi postoji ciklus s u ovom grafu. Izbacimo iz multigrafa Γ grane iz s. Dobijeni podmultigraf H , ne mora biti povezan, ali mu svi qvorovi imaju paran stepen. Svaka od komponenti povezanosti H i po induktivnoj pretpostavci sadri Ojlerovu konturu si (Ojlerovu u toj komponenti!). Kako je multigraf Γ bio povezan, svaka od staza s1 , s2 , . . . , sk ima bar jedan zajedniqki qvor sa zatvorenom stazom s. Traenu zatvorenu Ojlerovu stazu dobijamo tako xto se kreemo po stazi s i kad god naiemo na neki qvor u koji se nalazi na zatvorenoj stazi si koju nismo obixli, iz ega skrenemo i obiemo celu stazu si (na kraju tog obilaska smo ponovo u qvoru u), a zatim nastavamo obilazak po stazi s (sa potrebnim skretaima za ostale staze sj ). Time smo dobili da i za povezani multigraf sa m grana i svim qvorovima parnog stepena postoji Ojlerova kontura, pa po principu matematiqke indukcije ovaj smer teoreme vai za svaki multigraf koji ispuava uslove. Posledica prethodne teoreme je i sledee tvree. POSLEDICA. 4.4.4. Povezan multigraf sa bar jednom granom je poluojlerov ako i samo ako sadri 0 ili 2 qvora neparnog stepena.
24
4. TEORIJA GRAFOVA
Dokaz. ⇒: Ako multigraf poseduje Ojlerov put (tj. zatvorenu Ojlerovu stazu ili Ojlerovu stazu), tada analogno kao i u prethodnoj teoremi dobijamo da svaki qvor (sem moda poqetnog i krajeg ako su razliqiti) ima paran stepen. ⇐: Ako povezan multigraf ima 0 qvorova neparnog stepena onda zadovoava uslove Ojlerove teoreme pa sadri (zatvorenu) Ojlerovu stazu. Ako povezan multigraf Γ ima 2 qvora neparnog stepena (u i v) onda od ega moemo napraviti multigraf H , tako xto emo grafu Γ dodati jox jednu granu e = {u, v}. Graf H prema Ojlerovoj teoremi sadri Ojlerovu konturu. Izbacivaem grane e iz ove Ojlerovu konturu dobijamo Ojlerov put koji polazi iz qvora u i zavrxava se u qvoru v . PRIMER 4.4.5. Na osnovu prethodne teoreme vidimo da obilazak mostova u Kenigsbergu nije mogu jer odgovarajui graf ima stepene qvorova 5,3,3,3, te on nije ni poluojlerov, a pogotovo nije Ojlerov.
Vratimo se sada na primer sa poqetka, vezan za postojae Ojlerove konture. PRIMER 4.4.6. slike?
Moe li se jednim potezom (bez dizaa olovke sa papira) nacrtati figura sa
Rexee. U odgovarajuem grafu imamo 5 qvorova koji imaju stepene 3,3,3,3,4, pa na osnovu Ojlerove teoreme u tom grafu ne postoji Ojlerov put (a samim tim ni Ojelrova kontura), te je datu sliku nemogue nacrtati jednim potezom. U prethodnim teoremama smo dali potrebne i dovone uslove za egzistenciju Ojlerove konture, odnosno Ojlerovog puta. Sada emo dati postupak za nalaee Ojlerove konture u Ojlerovom grafu (sa maom modifikacijom dobijamo Ojlerov put). To je algoritam Flerija (eng. Fleury) koji konstruixe Ojlerovu konturu tako xto u svakom koraku bira most samo ako nema drugog izbora. Ulaz za ovaj algoritam je Ojlerov graf Γ, a izlaz je niz qvorova i grana W koji predstavaju Ojlerovu konturu. procedure Flerijev algoritam (G)
v := v0 // pretpostava se da je izabran proizvoan qvor v0 ∈ V (Γ) W := v0 H := Γ =∅ while E (H ) // neka je do sad izabrana staza W = v0 , e1 , v1 , . . . , ei , vi begin
izabrati ei+1 ∈ E (H ) tako da vae uslovi: 1) ei+1 je susedna sa vi ; // tj. ei+1 = {vi , vi+1 } 2) ei+1 nije most u H (izuzev ako nema drugog izbora). W := W, ei+1 , vi+1 H := H − ei+1 // iz H izbacimo ei+1 , a u stazu W dopixemo ei+1 i vi+1 end end procedure
Dokaz da Flerijev algoritam daje Ojlerovu konturu moe se nai u kizi [5].
4.4. OJLEROVI GRAFOVI
25
Ojlerove konture su od interesa za organizacije koje u velikim gradovima domainstvima vrxe neke usluge (npr. raznose poxtu). Organizatori velikih izlobi moraju (ako hoe da posetioci vide sve eksponate i da prelaze xto mai put) da odrede jedan Ojlerov put u grafu odreenom izlobenim prostorom i stazama kroz ega. Najpoznatiji ovakav problem je Problem kineskog poxtara (dobio takvo ime jer ga je prvi razmatrao kineski matematiqar Kuan 1962. godine). U poxti poxtar ujutru uzima pisma, obilazi ulice u svom reonu i na kraju radnog dana vraa se u poxtu. Poxtar e najracionalnije razneti pisma u svom reonu ako kroz svaku ulicu proe taqno jedanput. To je mogue samo ako je odgovarajui graf Ojlerov, a u ostalim sluqajevima se trai optimalno rexee, tj. da poxtar odabere marx-rutu kojom e hodati xto je mae mogue. Ovaj problem je u literaturi poznat kao Problem kineskog poxtara. Rexee ovog problema dobija se kombinacijom Flerijevog algoritma i algoritma Edmondsa i onsona (eng. Edmonds, Johnson; 1974. godina). U algoritmu Edmondsa i onsona vrximo duplicirae postojeih ivica teinskog multigrafa Γ, tako da u teinskom Ojlerovom nadgrafu Γ∗ suma X w(e) bude minimalna (ovde je funkcija w dodeuje teinu svakoj grani). Zatim Flerijevim e∈E (Γ∗ )
algoritmom pronaemo Ojlerovu konturu u Γ∗ i to je traeni put poxtara.
26
4.5
4. TEORIJA GRAFOVA
Hamiltonovi grafovi
DEFINICIJA 4.5.1. Hamiltonova kontura grafa Γ je zatvoren put koji sadri sve qvorove iz Γ. Graf koji ima Hamiltonovu konturu naziva se Hamiltonov graf . Hamiltonov put u grafu Γ je put koji sadri sve qvorove iz Γ. Graf koji ima Hamiltonov put naziva se poluhamiltonov graf .
Meu definicijama Ojlerovih i Hamiltonovih grafova postoji velika sliqnost, ali je potpuno drugaqija situacija kada je u pitau ihova karakterizacija. Ojlerovi grafovi su u potpunosti odreeni Ojlerovom teoremom, dok za Hamiltonove grafove tako nexto nije poznato. Jedan od najveih nerexenih problema Teorije grafova je odrediti potreban i dovoan uslov da je graf Hamiltonov. Ojlerovi i Hamiltonovi grafovi nemaju neku direktnu vezu. To pokazuje i sledei primer. PRIMER 4.5.2. Dati primere grafova koji su istovremeno Ojlerovi i Hamiltonovi, nisu Ojlerovi a jesu Hamiltonovi, jesu Ojlerovi a nisu Hamiltonovi, nisu ni Ojlerovi ni Hamiltonovi.
Rexee. Ojlerov i Hamiltonov graf je kontura C n , npr. C 3 . Potpun graf K 4 nije Ojlerov, a jeste Hamiltonov. Potpun bipartitini graf K 2,4 jeste Ojlerov, a nije Hamiltonov. Zvezda S 3 = K 1,3 nije ni Ojlerov ni Hamiltonov graf.
Jox opxtije, imamo da egzistencija Hamiltonovog puta ne zavisi samo od stepena qvorova, xto pokazuje sledei primer. PRIMER 4.5.3. Dati primer grafova sa istim nizom stepena qvorova, od kojih jedan ima Hamiltonov put, a drugi nema.
Rexee. Prvi graf (koji se sastoji od konture C 16 kod koje su spojeni naspramni qvorovi) ima ne samo Hamiltonov put, nego i Hamiltonovu konturu. Drugi graf ne poseduje Hamiltonov put jer kad preemo iz jednog dela u drugi prolazimo kroz centralni qvor, tako da u ega ne moemo ponovo doi, a samo iz ega moemo prei u trei deo ovog grafa.
Oba grafa imaju iste stepene qvorova jer su 3-regularni (tj. svi stepeni su im 3). Stoga ne postoji kriterijum samo na osnovu stepena qvorova koji odreuje da li je graf poluhamiltonov (a samim tim i Hamiltonov) ili nije. Sada emo dati nekoliko samo potrebnih, odnosno samo dovonih uslova za Hamiltonove grafove. TEOREMA 4.5.4. = S ⊂ V (Γ) vai Ako je Γ Hamiltonov graf, onda za svaki pravi podskup ∅ ω(Γ − S ) |S |, tj. broj komponenti povezanosti grafa Γ − S nije vei od broja elemenata skupa S .
4.5. HAMILTONOVI GRAFOVI
27
Dokaz. Neka je C Hamiltonova kontura u grafu Γ. Tada je en skup grana podskup skupa grana grafa, tj. E (C ) ⊆ E (Γ). Odavde dobijamo i da je E (C − S ) ⊆ E (Γ − S ), xto povlaqi ω(Γ − S ) ω(C − S ) jer se dodavaem novih grana ne poveava broj komponenti u grafu (ako dodamo granu izmeu qvorova iz iste komponente onda broj komponenti ostaje isti, a ako dodamo granu izmeu qvorova razliqitih komponentni onda se smai za 1). Uklaaem qvorova iz skupa S kontura C se raspada na jedan ili vixe puteva. Broj tih puteva je mai od ili jednak sa brojem elemenata skupa S (izbacivaem svakog novog qvora iz S dobijamo nov put ako taj qvor nije susedan u C sa nekim prethodno izbaqenim), tj. vai ω(C − S ) |S |. Sa ove 2 nejednakosti dobijamo traenu ω(Γ − S ) ω(C − S ) |S |. Korixee prethodne teoreme za ispitivae da li je graf Hamiltonov ilustrovaemo sledeim primerom. PRIMER 4.5.5.
Pokazati da graf sa leve slike ne poseduje Hamiltonovu konturu.
Rexee. Ako za skup S uzmemo 3 crna qvora (svaki od tih qvorova je spojen sa svim ostalim), tada e se graf koji ostane kada izbacimo ova 3 qvora (prikazan na slici desno) sastojati od jednog trougla i tri izolovana qvora, tj. to je graf Γ − S = K 3 ∪ K 1 ∪ K 1 ∪ K 1 . On ima 4 komponente povezanosti, ω(Γ − S ) = 4. Kako vai ω(Γ − S ) = 4 > 3 = |S | dobijamo da graf Γ ne sadri Hamiltonovu konturu. Sledeim primerom emo pokazati da uslov Teoreme 4.5.4 nije i dovoan uslov za Hamiltonove grafove. PRIMER 4.5.6.
Pokazati da Petersenov graf (graf sa naredne slike) nije Hamiltonov.
Rexee. Pretpostavimo da Petersenov graf sadri Hamiltonovu konturu C . Bez gubitka opxtosti, moemo da pretpostavimo da je u konturi C qvor a susedan sa qvorovima b i e. Odatle sledi da qvor h, trei sused qvora a, mora da bude susedan sa qvorovima g i i u C . Sada postoje tri sluqaja, u zavisnosti od toga sa kojim qvorovima su u konturi C susedni qvorovi b i e.
1
◦
Qvor b je susedan sa c, a qvor e je susedan sa d. Sada qvorovi c i d ne mogu da budu susedni u C , inaqe se obrazuje kontura abcdea, koja nije Hamiltonova. Prema tome, u C qvor c mora da bude susedan sa g , a qvor d sa i. Meutim, tada se formira kontura abcghidea, koja takoe nije Hamiltonova, pa je ovaj sluqaj nemogu.
2
◦
Qvor b je susedan sa c, a qvor e je susedan sa f (ovaj sluqaj je analogan sluqaju kada je qvor b susedan sa j , a qvor e susedan sa d). Qvor j ne moe da bude susedan sa b u C , pa stoga j mora da bude susedan sa f i i u C . Sliqno, qvor d ne moe da bude susedan sa e u C , pa stoga d mora da bude susedan sa c i i u C . Meutim, tada qvor i mora da bude susedan u C sa qvorovima d, h i j , xto nije mogue.
3
◦
Qvor b je susedan sa j , a qvor e je susedan sa f . Qvorovi f i j ne mogu da budu susedni u C , inaqe se formira kontura abjfea, koja nije Hamiltonova. Prema tome, u C qvor j mora da bude susedan sa i, a qvor f sa g . Meutim, tada se formira kontura abjihgfea, koja takoe nije Hamiltonova, pa ni ovaj sluqaj nije mogu.
28
4. TEORIJA GRAFOVA
Kako smo u sva tri sluqaja dobili kontradikciju, zakuqujemo da Petersenov graf nije Hamiltonov. Za Petersenov graf, ma kako uzeli skup S , vai ω(Γ − S ) |S |. Time smo pokazali da ovaj uslov nije i dovoan. Dovoni uslovi za Hamiltonove grafove su daleko brojniji od potrebnih. Najpoznatiji su Dirakov (danski Guy A. Dirac; 1952.), Oreov (eng. O.Ore; 1960.), Bondijev i Hvatalov (eng. J.A.Bondy, V.Chvatal; 1976.), kao i Redeiev (ma. R´edei) za orijentisane grafove. Mi emo ovde pokazati Dirakov uslov, a ostale emo samo formulisati (dokaze moete nai u kigama navedenim u literaturi). PRIMER 4.5.7. Na dvoru kraa Artura sakupilo se 2n vitezova, pri qemu svaki od ih, meu ostalim, ima najvixe n − 1 neprijatea. Dokazati da Merlin, savetnik kraa Artura, moe da rasporedi vitezove za okrugli sto tako da su svaka dva suseda prijatei. (Prijatestvo i neprijatestvo su simetriqni.)
Rexee. Raporedimo vitezove na proizvoan naqin za sto. Neka su u tom rasporedu neka 2 viteza koji su u svai, npr. Artur i Lanselot (Artur je imao dobar razlog da ne govori sa Lanselotom zbog svoje ene Ginevre) i bez umaea opxtosti moemo uzeti da je A levo od L. A ima bar n prijatea meu ostalim vitezovima, a L ima najvixe n − 1 neprijatea (sa sve A). Stoga negde za stolom postoje vitezovi A i L takvi da su A i A prijatei, L i L prijatei i da A sedi na mestu levo od L . Merlin sada moe da vitezovima izmeu L i A zameni mesta za stolom (ako je U bio levi sused od V , da sada V bude levi sused od U ), a ostale viteze da ostavi gde su bili. Ova transformacija je predstavena na sledeoj slici. ...
...
L
L
A
L V 1
V k
.. .
V 2
V 2
...
A
L
.. .
V 1
V k ...
A
A
Raspored vitezova (A,L,V 1 , V 2 , . . . , Vk , A , L ) je zameen rasporedom (A, A , V k , . . . , V2 , V 1 , L , L ) (vitezovi V i se nalaze i dae izmeu ista dva viteza), a umesto parova viteza (A, L) (koji su u svai) i (A , L ) (koji mogu biti prijatei, ali i neprijatei) sada imamo parove susednih vitezova (A, A ) i (L, L ). Time je Merlin smaio broj neprijatestava (za 1 ili 2 ako su i A i L u svai) meu susednim vitezovima za stolom. Kako u polaznom rasporedu imamo najvixe 2n neprijatestava (toliko ima susednih parova viteza), xto je konaqan broj i kako se u svakom koraku taj broj smauje, za nekoliko koraka emo doi do toga da ima 0 neprijatestava meu susedima za stolom. Time smo dokazali da Merlin moe da rasporedi viteze za sto, tako da jedan pored drugog sede vitezovi koji su prijatei. Ovaj primer moemo prevesti na jezik Teorije grafova tako xto uzmemo da su vitezovi qvorovi grafa, a da izmeu 2 qvora imamo granu ako i samo ako su odgovarajui vitezovi prijatei. Traeni raspored za stolom odgovara Hamiltonovoj konturi. Tako dobijamo sledeu teoremu (uzeli smo da ima n qvorova, a ne 2n, xto ne mea nixta u dokazu!). TEOREMA 4.5.8. Dirakova teorema. je Γ Hamiltonov graf.
Dokaz.
Neka je Γ graf sa n 3 qvorova kod koga je δ n2 . Tada
Dokaz ide analogno kao u prethodnom primeru.
Dirakova teorema je specijalni sluqaj narednih tvrea.
29
4.5. HAMILTONOVI GRAFOVI
TEOREMA 4.5.9. Oreova teorema. Neka je Γ graf sa n 3 qvorova takav da za svaka 2 nesusedna qvora u i v vai d(u) + d(v) n. Tada je Γ Hamiltonov graf.
TEOREMA 4.5.10. Teorema Bondija i Hvatala. Neka je Γ graf sa n 3 qvorova. Neka su u i v dva nesusedna qvora za koje vai d(u) + d(v) n. Tada je graf Γ + uv (graf koji se dobija od G dodavaem grane izmeu qvorova u i v ) Hamiltonov ako i samo ako je Γ Hamiltonov graf.
TEOREMA 4.5.11. Teorema Redeia. U orijentisanom grafu Γ u kojem za svaka 2 qvora u i v postoji bar jedna od grana (u, v), (v, u) postoji Hamiltonov put.
U narednom primeru emo ilustrovati primenu prethodne teoreme u stvarnom ivotu (taqnije, i ovaj problem dolazi iz Kombinatorne optimizacije). Taj problem je vezan za traee Hamiltonovog puta u orijentisanom grafu. PRIMER 4.5.12. Graevinska firma koja treba da zavrxi n = 5 stanova raspolae 1 ekipom vodinstalatera i 1 ekipom molera. Moleri ne mogu poqeti sa radom u stanu u kojem vodoinstalateri nisu zavrxili svoj posao. U k -tom stanu (k = 1, 2, . . . , n) vodoinstalateri treba da rade vk qasova, a moleri mk qasova: v1 = 8, v2 = 20, v3 = 7, v4 = 18, v5 = 9; m1 = 12, m2 = 12, m3 = 15, m4 = 10, m5 = 15.
Kojim redosledom treba da rade vodoinstalateri da bi celokupan posao bio zavrxen xto je mogue ranije?
Rexee. Moe se pokazati da vodoinstalateri treba da rade u stanu i pre nego u stanu j samo ako je min(vi , mj ) min(vj , mi ). U protivnom bi ekipa molera gubila vixe vremena nego xto je potrebno. Formirajno orijentisan graf sa qvorovima 1, 2, 3, 4, 5 (to su stanovi) u kome od qvora i ide grana ka qvoru j ako je min(vi , mj ) min(vj , mi ). Odreivae redosleda stanova se svodi na traee Hamiltonovog puta u ovom orijentisanom grafu (koji je predstaven na sledeoj slici). 1
2
5
3
4
Jedini Hamiltonov put je 3, 1, 5, 2, 4. Tim redosledom treba i majstori da rade stanove.
30
4. TEORIJA GRAFOVA
4.6
Stabla
Pojam stabla (neki na srpskom koriste i izraz drvo , mada je ovaj uobiqajeniji; eng. tree ) predstava jedan od najvanijih pojmova u teoriji grafova. Stablo se moe posmatrati u dva konteksta: kao poseban graf (koji poseduje neka svojstva), ili kao podgraf nekog (povezanog) grafa. Sliqna situacija se java i sa konturama. DEFINICIJA 4.6.1.
Stablo je povezan graf bez kontura.
Na sledeoj slici data su sva (neizomorfna) stabla sa najvixe pet qvorova.
Vidimo da postoji samo jedno stablo sa n = 1 (takvo stablo se naziva i trivijalno jer nema grana), n = 2 i n = 3 qvora. Postoje 2 stabla sa n = 4 qvora i 3 stabla sa n = 5 qvorova (ona su u drugom redu). DEFINICIJA 4.6.2. Qvor stepena 1 u grafu se naziva list (eng. leaf ). Ponekad se umesto lista koristi i izraz visei qvor (eng. pendant vertex).
TEOREMA 4.6.3.
Svako (netrivijalno) stablo G sa n 2 qvorova ima bar 1 list.
Dokaz 1. Izaberimo u stablu T proizvoan qvor v1 . Ako je egov stepen d(v1 ) = 1 dokaz je zavrxen. Ako je d(v1 ) > 1 onda qvor v1 ima neke susede i od ih odaberimo 1 neka je to v2 . Ako je d(v2 ) = 1 dokaz je zavrxen. Ako je d(v2 ) > 1 onda qvor v2 ima bar jednog suseda razliqitog od qvora v1 , recimo v3 . Ako je d(v3 ) = 1 dokaz je zavrxen. Ako je d(v3 ) > 1 onda qvor v3 ima bar jednog suseda razliqitog od qvora v2 , recimo v4 . Qvor v4 je razliqit i od v1 jer stablo T ne poseduje konturu. Ponavajui dati postupak, kako je broj qvorova u stablu konaqan, u nekom trenutku emo doi do qvora stepena 1 (u protivnom bismo doxli ponovo do nekog ranije odabranog qvora, xto bi znaqilo da stablo T poseduje konturu!). Dokaz 2. Pod netrivijalnim stablom podrazumevamo stablo sa bar 2 qvora. Uoqimo dva qvora u tom grafu koji su na najveoj udaenosti (duina najkraeg puta izmeu ih je najvea). Tada su ti qvorovi stepena jedan. U protivnom vailo bi da postoji dui put (ako je jedan od krajih qvorova susedan jednom qvoru van uoqenog puta), ili bi se javila kontura (ako je jedan od krajih qvorova susedan bar sa dva qvora puta). Nakon Teoreme 4.6.4 moemo dati i sledei dokaz:
Dokaz 3 .
Zbir svih stepena qvorova je jednak dvostrukom broju grana, tj. X d(v) = 2m = 2 · (n − 1) = 2n − 2. v ∈V
Kako je stablo G povezan graf i kako je ono netrivijalno (tj. n 2) to za svaki egov qvor vai d(v) 1, pa odavde dobijamo da ono ima bar 2 qvora stepena 1, tj. 2 lista. Dokazima 2 i 3 smo pokazali jaqe tvree da u netrivijalnom stablu postoje bar 2 lista. Stablo koje ima taqno 2 lista je put. Najvixe listova ima zvezda (ona ima 1 qvor stepena n − 1, dok su svih preostalih n − 1 qvorova listovi).
31
4.6. STABLA
Narednim tvreem daemo ekvivalentne definicije pojma stabla (svaki od narednih iskaza moe se uzeti za definiciju stabla i onda su ostali iskazi teoreme!). TEOREMA 4.6.4.
Sledei iskazi su ekvivalentni:
1◦ Stablo je povezan graf bez kontura. 2◦ Stablo je povezan graf sa n qvorova i m = n − 1 grana. 3◦ Stablo je graf sa n qvorova, m = n − 1 grana i bez kontura. 4◦ Stablo je minimalan povezan graf (udaavaem bilo koje grane postaje nepovezan graf). 5◦ Stablo je maksimalan graf bez kontura (dodavaem bilo koje grane formira se kontura). 6◦ Stablo je graf u kome su svaka dva qvora povezana jedinstvenim elementarnim putem.
Dokaz.
Dovono je dokazati da svaki iskaz implicira sledei, a posledi prvi.
1◦ ⇒ 2◦ : Indukcijom po n. Za n 2 tvree vai. Pretpostavimo da tvree vai za sve grafove sa najvixe n qvorova (n > 2). Posmatrajmo povezan graf bez kontura sa n + 1 qvorova. Prema prethodnoj teoremi imamo bar 2 qvora stepena 1. Udaavaem jednog od tih qvorova stepena jedan, dobija se graf koji je povezan i bez kontura. Na osnovu indukcijske hipoteze on ima n qvorova i m = n − 1 granu. Samim tim posmatrani graf ima n + 1 qvorova i n grana, xto je i trebalo dokazati. 2◦ ⇒ 3◦ : Pretpostavimo da graf poseduje bar jednu konturu, i neka je K jedna od tih kontura. Svaki qvor konture K ima stepen bar dva. Primetimo da je proseqan stepen qvora grafa G mai = 2 − n2 ). Odatle sledi da postoji bar jedan qvor u grafu stepena jedan od 2 (naime, d = 2 m n (pretpostana se da je n > 1; u protivnom nema xta da se dokazuje). Udaimo iz grafa bilo koji qvor stepena jedan i emu incidentnu granu (udaeni qvor ne pripada konturi K jer mu je stepen 1). Tada se dobija povezan graf sa n = n − 1 qvorova i m = n − 1 grana. Ponavajui isti postupak na dobijeni podgraf, kao i egove podgrafove, dobiemo posle konaqno mnogo koraka graf koji sadri samo qvorove konture K , a za taj graf ne vai da mu je broj grana za 1 mai od broja qvorova, xto daje kontradikciju. Stoga, posmatrani graf G nema kontura. Ovim je implikacija dokazana. 3◦ ⇒ 4◦ : Pretpostavimo najpre da je graf nepovezan i da ima k > 1 komponenata. Tada je svaka egova komponenta stablo (jer nema kontura). Stoga i–ta komponenta ima ni qvorova i mi = ni − 1 grana (i = 1, 2, . . . , k ). Odatle direktno sledi da je ukupan broj grana grafa m = n − k, kontradikcija, s obzirom da je m = n − 1. Dokaimo sada i minimalnost. Pretpostavimo stoga da smo udaavaem neke grane dobili graf koji je povezan. Tada izmeu krajih qvorova te grane postoji bar jedan put u novodobijenom grafu. Ako bismo vratili udaenu granu, ona bi sa uoqenim putem formirala konturu, xto je u suprotnosti pretpostavkama u okviru 3◦ . Stoga je implikacija dokazana. 4◦ ⇒ 5◦ : Graf nema kontura. Naime, udaavaem bilo koje grane sa konture, dobili bismo povezan graf xto je u suprotnosti sa 4◦ . Dokaimo sada i maksimalnost. Drugim reqima pretpostavimo da smo grafu dodali granu i da nismo formirali konturu. Meutim to je nemogue, jer je graf bio povezan, tako da je izmeu krajih qvorova dodate grane postojao put, a samim tim je dodavaem grane neminovno doxlo do formiraa konture. Ovim je implikacija dokazana. 5◦ ⇒ 6◦ : Pretpostavimo da izmeu dva qvora ne postoji put koji ih povezuje. Tada bi dodavaem grane izmeu ta dva qvora dobili graf bez konture, xto je u suprotnosti sa 5◦ . Dakle, izmeu svaka dva qvora postoji bar jedan put. Ako bi izmeu dva qvora postojala bar dva puta, tada bi u grafu postojala kontura. Naime ovi putevi se najpre razdvajaju poqexi od nekog qvora (potencijalno polaznog za oba puta) a zatim i stapaju u isti qvor (potencijalno zavrxnog za oba puta). Meutim, postojae konture je u suprotnosti sa 5◦ . Ovim je implikacija dokazana. 6◦ ⇒ 1◦ : Poxto su svaka 2 qvora povezani jedinstvenim putem ovaj graf je povezan. Ako bi u grafu postojala bar jedna kontura, tada bi izmeu bilo koja dva qvora neke konture postojala dva razliqita puta, xto je u suprotnosti sa 6◦ . Stoga je to povezan graf bez kontura.
32
4. TEORIJA GRAFOVA
Iz ove teoreme sledi da se svaki od iskaza 1◦ –6◦ moe uzeti kao definicija stabla. Pored toga, ova teorema ima i vixe posledica. Pomenimo neke od ih. TEOREMA 4.6.5.
Svaki povezan graf sadri stablo kao razapiui podgraf.
Dokaz. Najpre imamo da je graf povezan. Ako bi bio bez kontura, tada bi samim tim bio i stablo (trivijalan sluqaj. Uzmimo stoga da ima bar jednu konturu. Udaimo potom bilo koju granu te konture. Ovim je dobijen povezan graf. Ako bi taj podgraf bio bez kontura dokaz bi bio gotov. U protivnom, ponavaem istog rezonovaa, posle konaqno koraka, dobili bismo povezan podgraf bez kontura, dakle stablo. Ovim je dokaz kompletiran. DEFINICIJA 4.6.6.
Xuma je graf qija je svaka komponenta povezanosti stablo.
Direktna posledica ove definicije i Teoreme 4.6.4 je sledee tvree. TEOREMA 4.6.7.
Acikliqan graf je xuma.
Sledee tvree opisuje centar stabla (da podsetimo centar grafa qine qvorovi sa najmaim ekscentricitetom — videti Definiciju 4.2.20 sa strane 17). TEOREMA 4.6.8.
Centar stabla se sastoji ili od jednog qvora, ili od dva susedna qvora.
Dokaz. Dokaz se moe sprovesti indukcijom po broju qvorova stabla. Teorema je taqna za sva stabla, recimo do 5 qvorova (videti sliku na kojoj smo naveli sva stabla sa 5 ili mae qvorova). Posmatrajmo sada proizvono stablo T sa n > 5 qvorova. Neka je T graf dobijen iz T udaavaem svih listova iz T . Tada je T stablo (jer je dobijeni graf povezan i bez kontura). Dae, ekscentricitet svakog qvora iz T je umaen za jedan u odnosu na egov ekscentricitet u T . Razlog je sledei: Ako za neki qvor v vai da je najudaeniji qvor od ega (recimo w) stepena veeg od jedan, tada bi mogli nai suseda qvora w koji je na veoj udaenosti od w, xto je u suprotnosti sa izborom qvora w. Samim tim stabla T i T imaju iste centre. Na osnovu indukcijske hipoteze, centar stabla T se sastoji ili od jednog qvora, ili od dva susedna qvora, a stoga i stablo T . Bez dokaza navodimo sledeu teoremu (jer je posledica prethodne i odgovarajuih definicija) koja daje vezu dijametra i radijusa stabla. TEOREMA 4.6.9. Centar stabla T se sastoji od jednog qvora ako i samo ako je D(T ) = 2r(T ). U protivnom je D(T ) = 2r(T ) − 1 i tada se centar sastoji od 2 qvora.
Centar stabla T moemo dobiti veoma jednostavnim algoritmom. Ako u svakom koraku izbacimo sve listove, sve dok ne ostanemo sa jednim ili dva qvora (jer prema prethodnoj teoremi centar ima ili 1 ili 2 qvora), na kraju e nam ostati qovorovi koji qine centar stabla T .
4.7. KORENSKA STABLA
4.7
33
Korenska stabla
DEFINICIJA 4.7.1. Stablo u kome je jedan qvor posebno izdvojen naziva se korensko stablo , a taj qvor se naziva koren stabla.
Na sledeoj slici dati su primeri korenskih stabala, pri qemu je koren predstaven crnim kruiem.
Terminologija vezana za korenska stabala tradicijalno se oslaa na botaniqke i genealoxke pojmove. Ako je T korensko stablo, a v qvor razliqit od korena, rodite qvora v je qvor u takav da je uv orijentisana grana od u ka v; tada je v dete qvora u (rodite datog qvora je jedinstven – zaxto?). Qvorovi sa istim roditeem u su deca qvora u. Kod korenskih stabala se ponekad grane orijentixu od roditea ka deci ili od dece ka roditeima (tako je predstavano drugo, odnosno tree stablo na prethodnoj slici). Preci qvora u, koji nije koren, su svi qvorovi koji lee na putu od korena do qvora u (bez u). Potomci qvora u su svi qvorovi koji imaju qvor u kao pretka. List je qvor bez dece (takvi qvorovi se nazivaju i terminalni , odnosno zavrxni qvorovi ); ostali qvorovi su unutraxi qvorovi (ili interni qvorovi ). Koren je interni qvor ako stablo T sadri bar dva qvora. Ako je u qvor korenskog stabla, tada je podstablo sa korenom u stablo indukovano qvorom u i egovim potomcima. Od posebnog interesa su stabla data sledeom definicijom. DEFINICIJA 4.7.2. Korensko stablo se naziva m–arno stablo ako svaki interni qvor ima najvixe m dece. Potpuno m–arno stablo je stablo u kome svaki interni qvor ima taqno m dece. Za m = 2 odgovarajue m–arno stablo se naziva binarno stablo .
Na narednoj slici data su tri m–arna (korenska) stabla. Prvo je ternarno, a drugo je potpuno ternarno stablo. Tree stablo je potpuno binarno.
U mnogim sluqajevima vodi se raquna i kako su qvorovi postaveni u ravni (geometrijskoj interpretaciji). Kod binarnih stabala (podrazumeva se ureenih), ako rodite ima dva deteta, tada su u upotrebi i pojmovi levo dete (podstablo), ili desno dete (podstablo). Ponekad, ako rodite ima samo jedno dete, ono moe biti ili levo ili desno dete, a nekad se mora jasno znati da li je to levo ili desno dete. Vano svojstvo korenskog stabla je da je izmeu svakog qvora grafa i korena postoji jedinstven put. Za svaki qvor v moemo uvesti nivo qvora v kao rastojae od korena do qvora v (odnosno, ukoliko posmatramo orijentisano korensko stablo onda kao duinu jedinstvenog puta od korena do qvora v). U odnosu na koren, moe se izvrxiti particija skupa qvorova grafa na sledei naqin: V 0 se sastoji samo od korena; V i (i > 1) je skup qvorova grafa na rastojau i od korena (tj. to su svi
34
4. TEORIJA GRAFOVA
qvorovi koji imaju nivo i). Dakle imamo da se skup qvorova grafa moe predstaviti na sledei naqin: V = V 0 ∪ V 1 ∪ . . . ∪ V h Uobiqajeno je da se kae da su qvorovi iz V i na i-tom nivou (sloju) u odnosu na r (koren stabla). Ujedno, h je visina stabla. Korenska stabla imaju veliku primenu u raqunarstvu. Pokazaemo sada na primeru kako se neka formula moe predstaviti korenskim stablom. +
+
a
--
b
c
a
d
d
(a + b) · (c − d) + a · d
Koren odgovara celoj formuli (a + b) · (c − d) + a · d; svaki unutraxi qvor odgovara nekoj podformuli; na primer, levo podstablo korena odgovara podformuli (a+b)·(c−d), a desno podstablo korena odgovara podformuli a·d (ova 2 podstabla su predstavena na sledeoj slici); itd. listovi stabla odgovaraju slovnim simbolima (promenivim).
+
a
--
b
c
a
d
d
(a + b) · (c − d)
a·d
Izdvojiemo definiciju binarnog stabla, da bismo mogli da je uporedimo sa rekurzivnom definicijom koja sledi. DEFINICIJA 4.7.3. Za korensko stablo se kae da je binarno ako svaki qvor stabla (rodite) ima najvixe dva susedna qvora na sledeem nivou (deteta). U standardnom prikazu (slici) binarnog stabla dete sa leve strane se naziva levo dete , a dete sa desne strane desno dete .
Sada emo dati i alternativnu (rekurzivnu) definiciju binarnog stabla. DEFINICIJA 4.7.4.
Rekurzivna definicija.
T je binarno stablo ako vai:
i) T = K 1 ; ii) ako su T 1 i T 2 binarna stabla, tada je i T = T 1 ∗ T 2 binarno stablo, pri qemu je T 1 ∗ T 2 graf dobijen uvoeem novog qvora (koren stabla T ) i povezivaem tog qvora granom sa korenima stabala T 1 i T 2 (ukoliko neko od tih stabala nije prazno, to jest bez qvorova).
Sledea teorema je direktna posledica definicija. TEOREMA 4.7.5.
Neka je T binarno stablo sa n qvorova i visine h. Tada je
n 2h+1 − 1,
Dokaz.
ili alternativno,
h log2 (n + 1) − 1.
Dokaz ide matematiqkom indukcijom po visini stabla h.
35
4.7. KORENSKA STABLA
Posmatraemo sada neke standardne naqine obilazaka qvorova binarnih stabala. To su KLD, LKD i LDK obilasci (slova K, L, D su skraenice od reqi koren, levo podstablo i desno podstablo i oznaqavaju kojim redosledom vrximo obilazak). Na primeru korenskog stabla sa naredne slike (crnom bojom je oznaqen koren) islustrovaemo ove naqine obilaska qvorova stabla. A
B
C
D
E
H
I
F
J
G
K
i) KLD–obilazak (engleski: pre–order). Ovde se prvo obilazi koren, zatim levo podstablo, pa tek potom desno podstablo. Binarno stablo sa prethodne slike obilazimo na sledei naqin: A
B
D
H
E
I
J
C
F
K
G.
ii) LKD–obilazak (engleski: in–order). Ovde se prvo obilazi levo podstablo, zatim koren, pa tek potom desno podstablo. Binarno stablo sa prethodne slike obilazimo na sledei naqin: H
D
B
I
E
J
A
F
K
C
G.
iii) LDK–obilazak (engleski: post–order). Ovde se prvo obilazi levo podstablo, zatim desno podstablo, pa tek potom koren. Binarno stablo sa prethodne slike obilazimo na sledei naqin: H
D
I
J
E
B
K
F
G
C
A.
Napomena. Poredak koji odgovara LKD–obilasku qvorova na engleskom jeziku se zove infix order i on odgovara infiksnoj notaciji izraza, npr. a+b (kao xto smo i navikli). Postoje jox i prefiksna notacija, koja je ponegde zvana i poska notacija (po poskom matematiqaru Lukaxijeviqu), npr. +ab, i ona odgovara KLD–obilasku qvorova ( pre order ), kao i postfiksna notacija (tzv. inverzna poska notacija), npr. ab+, koja odgovara LDK–obilasku qvorova (post order ).
Kada stabla koristimo kao strukturu podataka pri programirau, najqexe emo se sretati sa dve vrste stabala – ureenim i balansiranim stablima. DEFINICIJA 4.7.6. Ureeno korensko stablo ima sve elemente u levom podstablu mae od broja u korenu i sve elemente u desnom podstablu vee od broja u korenu. Kod balansiranog korenskog stabla duine puteva od korena do listova se razlikuju za maksimalno 1, tj. duina puta od korena do proizvonog lista je ili h ili h − 1, gde je h visina stabla.
KLD–obilazak ureenog stabla daje qvorove od maeg ka veem. Stabla se u raqunarima se predstavaju apstraktnim (sloenim) tipom podataka. Primitivni tipovi podataka su ugraeni u programski jezik, dok kod apstraktnih programer treba da definixe strukturu, kao i operacije na ima. Najqexe predstavae binarnih stabala je pomou sloga (u Paskalu record) koji ima 3 elementa – vrednost poa, kao i dva pokazivaqa (ili pointera od eng. pointer) na memorijske lokacije korena levog podstabla i korena desnog podstabla. PRIMER 4.7.7. Pokazati da je broj nulpointera (pokazivaqi u prazno; uobiqajeno se oznaqava ju sa nil) u binarnom stablu vei od nenulpointera.
Rexee. Stablo ima n qvorova pa ima ukupno 2n pointera. Na svaki qvor (sem korena) imamo jedan od pointera u stablu koji pokazuje na ega, te stoga imamo n − 1 nenulpointera, dok su preostalih n + 1 nulpointeri. Time smo pokazali da u svakom binarnom stablu ima vixe nulpointera od nenulpointera. Napomena. Kod stabala koja nisu binarna ovaj odnos je jox nepovoniji (na primer, kod trinarnih stabala od 3n pokazivaqa imamo i dae n − 1 nenulpointera, dok su preostalih 2n + 1 nulpointeri. Ovo je jox jedan od razloga za veu popularnost binarnih stabala.
36
4. TEORIJA GRAFOVA
Za umetae nekog novog elementa u ureeno balansirano stablo koristimo sledei postupak. Pronaemo gde treba staviti taj element, stavimo ga u list i onda vrximo balansirae. Za brisae nekog elementa (tj. qvora) ureenog balansiranog stabla moe da nastupi jedan od sledea 3 sluqaja:
• Ako je taj element list samo ga obrixemo. • Ako taj qvor nema levog ili nema desnog sina, onda onog sina koga ima dovodimo na egovo mesto. • Ako ima oba sina onda se u egov qvor dovodi najmai element iz desnog podstabla (mogao bi i najvei element iz levog podstabla), dok se qvor u kome je bio najmai element iz desnog podstabla samo obrixe (to moemo jer je to list). Ako se ovakvim postupkom pokvari uslov da je to stablo balansirano onda jox treba izvrxiti balansirae. Objasnimo kako jox vrximo balansirae. Uoqimo qvor u koji je neizbalansiran (tj. visine egovog levog i desnog podstabla se razlikuju za 2 ili vixe) i koji je na najveem rastojau od korena. Imamo 2 mogunosti u zavisnosti od toga da li levo ili desno podstablo ima veu visinu.
• Neka levo podstablo ima veu visinu. Oznaqimo sa s i v levog i desnog sina od u i neka je t desni sin od s (ako postoji). Tada na mesto qvora u dovodimo qvor s sa egovim levim podstablom dok e mu desni sin biti qvor u kome e levo podstablo biti podstablo sa korenom s, a desno e biti podstablo sa korenom w. • Neka desno podstablo ima veu visinu. Oznaqimo sa t i w levog i desnog sina od u i neka je v levi sin od w (ako postoji). Tada na mesto qvora u dovodimo qvor w sa egovim desnim podstablom dok e mu levi sin biti qvor u kome e levo podstablo biti podstablo sa korenom t, a desno e biti podstablo sa korenom v. Konaqnim brojem ponavaa ovog postupka dobijamo balansirano stablo. Ovaj postupak emo ilustrovati na sledeem primeru, gde emo prvo formirati stablo, a zatim izvrxiti egovo balansirae. PRIMER 4.7.8. Nacrtati binarno ureeno korensko stablo ako elementi dolaze sledeim redom: 5,15,8,2,10,16,6,7,12. Zatim izbalansirati dato stablo.
Rexee. Prvi broj koji stie, 5, stavamo u koren stabla. Sledei je 15 i kako je 15 > 5 on e biti egov desni sin. Zatim dolazi 8, te kako je 8 > 5, 8 se nalazi u desnom podstablu od 5; kako je 8 < 15, 8 se nalazi u levom podstablu broja 15, tj. 8 e biti levi sin od 15. Nastavajui ovaj proces dobijamo stablo prikazano na narednoj slici levo. 5
5
2
15
8
6
7
2
16
10
12
8
8
6
5
15
7
10
2
16
15
6
7
10
16
12
12
Kad ga balansiramo uoqavamo qvor 15 (obojen crveno) koji nije balansiran jer mu levo podstablo ima visinu 3, a desno 1. Stoga na egovo mesto dovodimo egovog levog sina 8 (qvor obojen plavo), dok 15 postaje desni sin od 8. Ovim postupkom smo dobili stablo prikazano na prethodnoj slici u sredini. Ovo stablo kad balansiramo uoqavamo qvor 5 (obojen crveno) koji nije balansiran jer mu levo podstablo ima visinu 1, a desno 4. Stoga na egovo mesto dovodimo egovog desnog sina 8 (qvor obojen plavo), dok 5 postaje levi sin od 8. Ovim postupkom smo dobili balansirano stablo (svi listovi su na nivou 2 ili 3) prikazano na prethodnoj slici desno.
37
4.7. KORENSKA STABLA
Hafmanov k o ˆ d Osvrnimo se sad malo na kodirae. Sva slova kao i drugi simboli, u raqunaru se quvaju u vidu niza bitova (tj. niza 0 i 1). Najqexi naqin je preko ASCII koda, tj. kodiraa gde za svaki simbol koristimo niz od 7 bitova, plus dodatni bit (jer bajt ima 8 bitova!) koji slui za proveru parnosti (da se pri prenosu eliminixu grexke). Ako je koliqina podataka sa kojom radimo velika, poeno je izvrxiti saimae, tj. da za neke simbole iskoristimo mae bitova. Optimalno bi bilo kada bismo za simbole koji se qexe javaju koristili krae nizove bitova, a za one koji se javaju ree da koristimo due nizove bitova. Na taj naqin vrximo uxtedu memorijskog prostora za skladixtee podataka, a i bri prenos podataka kada vrximo transfer tih podataka sa jednog medija na drugi. Meutim prilikom ovakvog quvaa podataka (ako nizovi bitova koji predstavaju razliqite simbole imaju razliqite duine), dolazimo do problema kako da utvrdimo gde se jedan niz bitova zavrxava, a drugi poqie. To emo ilustrovati sledeim primerom. PRIMER 4.7.9. Neka je slovo a kodirano sa 10, b sa 101, e sa 11, m sa 1011 i sa n 110. Dekodirati niz bitova 1011110.
Rexee.
Da li e niz bitova 1011110 predstavati req bea (101|11|10) ili mn (1011|110)?
Uvedimo sada definiciju operacije konkatenacije (to je operacija koja lepi reqi) i nakon toga neke vezane za kodove. DEFINICIJA 4.7.10. Neka su a1 a2 a3 . . . an i b1 b2 b3 . . . bn reqi jezika A∗ . Binarnu operaciju ◦, koju emo zvati konkatenacija, definixemo kao a1 a2 a3 . . . an ◦ b1 b2 b3 . . . bn = a1 a2 a3 . . . an b1 b2 b3 . . . bn . K oˆd koji se jednoznaqno dexifruje za dati jezik je skup C , takav da se svaka req u jeziku moe jedinstveno izraziti kao konkatenacija elemenata skupa C . Kod C je prefiksni k o ˆd ako ima osobinu da element koda ne moe da predstava poqetni podniz nekog drugog elementa koda.
Posmatrajmo proizvono binarno stablo. Ako neka egova grana vodi do levog deteta oj e odgovarati bit 0, a ako vodi do desnog deteta oj e odgovarati bit 1. Kako svakom listu (koji su na narednoj slici obojeni crvenom bojom) odgovara jedinstven put od korena stabla (koji je na narednoj slici obojen crnom bojom), to svakom listu moemo da pridruimo niz bitova koji odgovaraju granama na putu od korena do tog lista. Taj niz bitova se naziva kod putae do lista . PRIMER 4.7.11. U korenskom stablu na narednoj slici (koren je obojen crnom bojom, a listovi crvenom) listovima su pridrueni simboli a,b,c,d,e,f . Za svaki od tih simbola odrediti egov kˆodputae do lista, a zatim dekodirati niz bitova 01110010000. 0
0
1
1
0
0
1
0
1
a
b
c
d
e
1
f
Rexee. Kad god u putu od korena do lista idemo ulevo toj grani odgovara bit 0, a kad idemo udesno odgovara bit 1 (ovi bitovi su na prethodnoj slici upisani plavom bojom pored svake grane). Tako, na primer, da bismo od gorena doxli do lista c moramo da idemo levo (0), pa desno (1) i levo (0), to e simbolu d odgovarati niz 010. Na sliqan naqin dolazimo do toga da svakom od simbola a,b,c,d,e,f odgovara sledee kodirae: a ↔ 000
b ↔ 001
c ↔ 010
d ↔ 011
e ↔ 10
f ↔ 11.
Dati kˆod je prefiksni kˆod (xto nam tvrdi naredna teorema), pa prilikom dekodiraa datog niza bitova moemo izvrxiti podelu na 011|10|010|000, xto nam daje req deca.
38
4. TEORIJA GRAFOVA
TEOREMA 4.7.12. prefiksni kˆod.
U bilo kom binarnom stablu, kˆod putae do lista za listove predstava
Vratimo se sada na ranije pomenutu ideju da za simbole koji se qexe javaju koristimo krae nizove bitova, a za ree due nizove bitova. U tu svrhu uvodimo teinu koda i sliqno teinu korenskog stabla. DEFINICIJA 4.7.13. Neka se svako od slova ai (i = 1, 2, . . . , n) iz azbuke simbola A java sa relativnom frekvencijom f i da duina binarnog niza koji ga predstava iznosi li . Tada je teina k oˆda uvodi kao w = l1 · f 1 + l2 · f 2 + . . . + ln · f n .
Ista formula vai i za teinu korenskog stabla kod koga je teina lista koji odgovara simbolu ai jednaka frekvenciji f i , a rastojae od korena do tog lista je jednako li . U nastavku emo dati Hafmanov algoritam, za pravee Hafmanovog stabla za simbole s1 , s2 , . . . , sn , kojima odgovaraju frekvencijama f 1 , f 2 , . . . , fn . Dokaz da Hafmanovo stablo predstava stablo sa minimalnom teinom (i onda direktno da i Hafmanov k ˆod predstava kˆod sa minimalnom teinom moe se nai u [1]. procedure Hafmanov algoritam (G) 1. Poreati frekvencije u neopadajui redosled. 2. Ako su 2 najmae frekvencije f i i f j (f i < f j ), obrazovati binarno
stablo sa qvorovima ili stablima si i sj kao decom, pri qemu je si levo dete, dok frekvenciju roditea predstava suma frekvencija f i + f j . Staviti broj 0 na granu koja vodi ka levom detetu i broj 1 na granu koja vodi ka desnom detetu. 3. Ukloniti frekvencije f i u f j i zameniti ih ihovom sumom f i + f j . 4. Ponavati korake 1–3 sve dok ne preostane samo jedna frekvencija. end procedure
PRIMER 4.7.14.
Neka su data slova a,b,c,d,e,f sa odgovarajuim frekvencijama pojavivaa: a b c d e simbol frekvencija 30 13 10 15 25
f 5
Odrediti Hafmanovo stablo i na osnovu ega Hafmanov kˆod. Kodirati req deca pomou tog Hafmanovog koda.
Rexee.
Daemo prikaz rada Hafmanovog algoritma po iteracijama (koraci 1–3).
5 10 13 15 25 30 f c b d e a 2. Najmae 2 frekvencije su 5 i 10 i ima odgovaraju simboli f i c koje emo zameniti stablom T 1 u qijem korenu je 5 + 10 = 15. 15 13 15 25 30 3. Nove frekvencije su: T 1 b d e a
1◦ 1. Poreajmo frekvencije u neopadajui redosled:
13 15 15 25 30 b T 1 d e a 2. Najmae 2 frekvencije su 13 i 15 i ima odgovara simbol b i stablo T 1 koje emo zameniti stablom T 2 u qijem korenu je 13 + 15 = 28 . 28 15 25 30 . 3. Nove frekvencije su: T 2 d e a
2◦ 1. Poreajmo frekvencije u neopadajui redosled:
39
4.7. KORENSKA STABLA
15 25 28 30 . d e T 2 a 2. Najmae 2 frekvencije su 15 i 25 i ima odgovaraju simboli d i e koje emo zameniti stablom T 3 u qijem korenu je 15 + 25 = 40 . 40 28 30 . 3. Nove frekvencije su: T 3 T 2 a
3◦ 1. Poreajmo frekvencije u neopadajui redosled:
28 30 40 . T 2 a T 3 2. Najmae 2 frekvencije su 28 i 30 i ima odgovaraju stablo d i simbol e koje emo zameniti stablom T 4 u qijem korenu je 28 + 30 = 58 . 58 40 3. Nove frekvencije su: . T 4 T 3
4◦ 1. Poreajmo frekvencije u neopadajui redosled:
40 58 . T 3 T 4 2. Najmae 2 frekvencije su 40 i 58 i ima odgovaraju stabla T 3 i T 4 koje emo zameniti stablom T 5 u qijem korenu je 40 + 58 = 98 . 98 . 3. Nove frekvencije su: T 5
5◦ 1. Poreajmo frekvencije u neopadajui redosled:
Sva ova stabla su predstavena na sledeoj slici. T 5 98 0
1
T 3
T 4
40
58
0
1
0
1
T 2 15
25
28
30
e
d
a 0
1
T 1 13
15
b 0
1
5
10
f
c
Sada za svaki simbol moemo odrediti egov Hafmanov kˆod tako xto pratimo bitove koji su pridrueni svakoj grani u putu od korena Hafmanovog stabla do lista u kome se nalazi taj simbol. Time dolazimo do toga da je Hafmanov kod za ove simbole: a 11
b c d e f 100 1011 00 01 1010
Konaqno moemo i kodirati req deca – to je 00|01|1011|11, odnosno 0001101111. Napomena. Hafmanov kˆod nije jedinstven. Primetimo da smo u iteraciji 2◦ mogli da poreamo 13 15 15 25 30 frekvencije u drugaqiji neopadajui redosled: . Da smo nastavili dae sa b d T 1 e a ovim redosledom dobili bi na kraju drugo Hafmanovo stablo (odredite ga!) i samim tim drugi Hafmanov kod: a b c 11 100 011
d e f 101 01 000
40
4.8
4. TEORIJA GRAFOVA
Zadaci
1. Koji je maksimalni mogui stepen qvora koji sadri n qvorova? 2. Koliko maksimalno moe da postoji grana u grafu koji sadri n qvorova? 3. Koliko grana moe da ima graf koji sadri 10 qvorova ako je svaki qvor stepena 2? 4. a) Odrediti broj grana u potpunom grafu K n sa n qvorova.
b) Korixeem prethodnog rezultata pokazati da je 1 + 2 + . . . + n =
n(n+1)
2
.
5. Koliko ima grana u grafu K m,n ? 6. Utvrditi da li su sledei nizovi grafiqki i, za one koji jesu grafiqki, nacrtati odgovarajue
grafove: a) (4, 4, 3, 2, 1); b) (6, 6, 5, 4, 3, 3, 1); v) (3, 3, 2, 2, 2, 2, 1, 1); g) (5, 4, 3, 3, 3, 3, 3, 2); ) (7, 7, 6, 5, 4, 4, 3, 2); e) (7, 4, 3, 3, 2, 2, 2, 1, 1, 1); ) (8, 7, 7, 6, 6, 5, 4, 3, 3, 1, 1, 1).
d) (7, 6, 6, 5, 4, 3, 2, 1);
7. a) Da li je mogue 6 gradova povezati putevima tako da iz tih gradova redom izlazi 5,4,3,3,2,2
puteva? b) Da li je mogue 5 gradova povezati putevima tako da iz tih gradova redom izlazi 4,3,2,1,0 puteva? v) Da li je mogue 6 gradova povezati putevima tako da iz tih gradova redom izlazi 4,4,4,3,3,2 puteva? g) Da li je mogue 7 gradova povezati putevima tako da iz tih gradova redom izlazi 6,3,3,3,3,3,3 puteva? Ukoliko je odgovor potvrdan odrediti na koliko razliqitih naqina je to mogue uraditi. Da li ti grafovi sadre Hamiltonov i Ojlerov put, odnosno konturu? (Izmeu 2 razliqita grada moe biti najvixe 1 put.) 8. a) Postoji li graf sa stepenima qvorova 6,6,6,6,6,6,5,3,3,3,3?
b) Postoji li bipartitni graf sa stepenima qvorova 6,6,6,6,6,6,6,6,5,3,3,3,3,3? v) Postoji li graf sa stepenima qvorova 9,8,6,5,3,3,3,3,1,1? 9. Pokazati da postoji prost graf sa 12 qvorova i 28 grana, takav da je stepen svakog qvora jednak
ili 3 ili 5. Nacrtati takav graf. 10. Dokazati da ne postoji prost graf sa 12 qvorova i 28 grana, takav da je stepen svakog qvora jednak: a) ili 3 ili 4; b) ili 3 ili 6. 11. Neka je v = (d1 , d2 , . . . , dn−1 , dn ) i w = (wn , wn−1 , . . . , w2 , w1 ), gde je wi = n − 1 − di . Pokazati da je
niz v grafiqki ako i samo ako je niz w grafiqki. 12. U ligi koja se sastoji od dve grupe sa po 13 timova u svakoj grupi, odrediti da li je mogue
napraviti raspored utakmica u sezoni tako da svaki tim odigra devet utakmica protiv timova iz svoje grupe i qetiri utakmice protiv timova iz suprotne grupe. 13. Na xahovskom turniru svaki igraq je odigrao sa svakim drugim igraqem najvixe jednu partiju.
Dokazati da u svakom trenutku na turniru postoje bar dva igraqa koji su do tog trenutka odigrali isti broj partija. 14. Na jednom ostrvu postoji ukupno 9 drava. Dokazati da na ovom ostrvu postoji drava koja
meu ima ima paran broj prijateskih drava. Ako je drava A prijateska sa dravom B , onda je i drava B prijateska sa dravom A. 15. Moe li na Matematiqkoj olimpijadi prisustvovati 1999 uqesnika (raqunajui i goste), ako
svaki od ih ima taqno 3 prijatea meu uqesnicima?
41
4.8. ZADACI
16. Car eli da sagradi dvorac u kojem e biti 1990 soba u jednom nivou, tako da vae sledei
uslovi: 1◦ Broj vrata na svakoj sobi je 0, 1 ili 2. 2◦ Izmeu svake dve sobe su najvixe jedna vrata, a iz svake sobe na ulicu vode najvixe jedna vrata. 3◦ Broj vrata prema ulici jednak je 19, a broj soba sa jednim vratima je 90.
Da li je mogue sagraditi takav dvorac? 17. Svako od 20 udi xae nekoj desetorici od ostalih po jedno pismo. Dokazati da postoje dve
osobe koje su jedna drugoj poslale pismo. 18. Neka je n prirodan i r i s nenegativni celi brojevi, takvi da je s paran i n = r + s. Dokazati
da postoji graf G sa n qvorova, tako da su r qvorova parnog, a preostalih s qvorova neparnog stepena. 19. Na nekom prijemu je prisutan odreen broj udi koji se meusobno ili poznaju ili ne poznaju
(postoje bar dvojica koji se poznaju). Za svaka 2 qoveka koji poznaju jednak broj udi vai da nemaju zajedniqkih poznanika. Pokazati da na prijemu postoji osoba koja poznaje samo jednu drugu osobu. 20. Odrediti najvei broj grana u bipartitnom podgrafu grafa:
a) P n ;
b) C n ;
v) K n ,
sa n 2 qvorova.
21. Dokazati da je najmai broj qvorova regularnog grafa stepena 3 sa mostom jednak 10. 22. Dokazati da regularan graf stepena 3 ima most ako i samo ako ima vezivni qvor. 23. Rekonstruisati graf G sa 5 qvorova ako su dati egovi indukovani podgrafovi Gi = G − vi za
i = 1, 2, 3, 4, 5, na sledei naqin: G1 je potpun graf sa 4 qvora iz koga je izbaqena jedna grana, G2 ima 2 komponente povezanosti od qega je jedna put duine 3, a druga izolovan qvor, G3 je zvezda sa 3 qvora i G4 i G5 predstavaju trouglove kod kojih je jedan qvor spojen granom sa qetvrtim qvorom (matematiqki ovo moemo zapisati kao G1 = K 4 − e, G2 = P 3 ∪ K 1 , G3 = S 4 = K 1,3 , G4 = G5 = K 1,3 +e). 24. Neka graf G = (V, E ) ima n qvorova i m grana. Odrediti broj podgrafova indukovanih nekim
skupom X ⊆ V . Ako je G = K n , odrediti ukupan broj svih podgrafova. 25. Opisati grafove kod kojih je stepen svakog qvora mai od 3. 26. Konstruisati regularan graf stepena 3 sa 2n qvorova (n 3) koji nema trouglova (kontura
duine 3). Odrediti 3-regularne grafove G, sa minimalnim brojem qvorova, takve da im je najmaa duina ciklusa jednaka: a) g(G) = 4; b) g(G) = 5 . 27.
28. Pokazati da komplement bipartitnog grafa ne mora biti bipartitan graf. 29. Neka je G k-regularan graf sa n qvorova. Odrediti ukupan broj trouglova u G i egovom
komplementu G. 30. Ako je dijametar grafa G vei od 3, tada je dijametar komplementa G mai od 3. Dokazati. 31. Graf izomorfan sa svojim komplementom naziva se samokomplementaran graf . Dokazati da je
broj qvorova u samokomplementarnom grafu oblika 4k ili 4k + 1. 32. Odrediti sve samokomplementarne grafove sa 4 i 5 qvorova. 33. Neka je n = 4k + 1 i neka je G samokomplementaran graf sa n qvorova. Dokazati da G sadri
qvor stepena
n−1
2
.
42
4. TEORIJA GRAFOVA
34. Ispitati koji od grafova sa sledee slike su izomorfni. t t
t t
t
t
t
t
t
t t t
t
t t t
t
t
35. Ispitati da li su grafovi sa sledee slike izomorfni. s
s
Q Q s
s
s
s
Q Q s
s s
s s
s
s s
36. Odrediti 3 neizomorfna grafa sa 6 qvorova koji imaju stepene qvorova 1,1,2,2,3,3. 37. Odrediti broj neizomorfnih grafova sa 4 i 5 qvorova. Nacrtati sve te grafove. 38. a) Pronai izomorfizam izmeu grafova prikazanih na sledeoj slici.
5} b) Dokazati da su oba grafa izomorfna sa sledeim grafom: skup qvorova je {1,2,..., , a dva qvora 2 {i, j } i {k, l} su susedna, i,j,k,l ∈ { 1, 2, . . . , 5}, ako i samo ako je {i, j } ∩ {k, l} = ∅.
39. Dokazati da su grafovi na sledeoj slici meusobno neizomorfni.
40. Koliko grafova na skupu qvorova {1, 2, . . . , 2n} je izomorfno sa grafom koji se sastoji od n
disjunktnih grana {1, 2}, {3, 4}, . . . , {2n − 1, 2n}? 41. Ispisati sve mogue matrice susedstva za put sa tri qvora P 3 i ciklus sa tri qvora C 3 . 42. Ispisati bar jednu matricu susedstva A za grafove a) K n ; b) K m,n , gde su m, n ∈ N. 43. Neka je A matrica susedstva grafa K 2,3 . Izraqunati A2 i A3 . Koje zakuqke moemo izvui
iz ovih matrica? 44. Odrediti matrice susedstva, incidencije i rastojaa za grafove iz zadataka 34, 35 i 39.
Upotrebiti matricu susedstva za odreivae broja puteva duine 2 i 3 u grafovima iz zadataka 34. Ispisati sve te puteve. 45.
46. Neka su date matrice incidencije:
1 0 a) R = 0 1 0
0 1 1 0 0
1 0 1 0 0
0 1 0 1 0
0 0 1 1 0
1 0 0 0 1
0 1 0 0 1
0 0 1 ; 0 1
b) R =
1 0 0 1 0 0 0 0
0 1 1 0 0 0 0 0
1 0 0 0 1 0 0 0
0 1 0 0 0 1 0 0
0 1 0 0 0 0 1 0
0 0 1 0 1 0 0 0
0 1 0 0 1 0 0 0
0 0 1 0 0 0 0 1
0 0 0 1 0 0 0 1
0 0 0 0 1 0 1 0
1 0 0 0 0 0 0 1
.
Odrediti odgovarajue grafove. Napisati ihove matrice susedstva, liste susedstva i matrice rastojaa.
43
4.8. ZADACI 47. Neka je data matrica incidencije:
1 0 0 0 −1 0 1 −1 0 −1 1 0 0 1 −1 0 0 0 0 0 1 −1 0 . S = 0 0 0 0 0 0 0 0 0 0 0 0 −1 0 0 0 0 0 1
Odrediti odgovarajui graf. Napisati egovu matricu susedstva, listu susedstva i matricu rastojaa. 48. Neka su date matrice susedstva:
0 0 1 a) A = 0 1 0
0 0 1 0 1 1
1 1 0 1 0 0
0 0 1 0 1 1
1 1 0 1 0 0
0 1 0 ; 1 0 0
0 1 0 b) A = 0 1 0
1 0 1 1 0 0
0 1 0 1 0 0
0 1 1 0 1 1
1 0 0 1 0 1
0 0 0 ; 1 1 0
0 0 1 v) A = 0 1 0 0
0 0 0 1 0 1 0
0 0 0 0 0 0 0
0 0 0 0 0 1 0
0 0 0 0 0 0 0
0 1 0 0 0 0 0
0 1 0 0 . 0 0 0
Odrediti odgovarajue grafove. Napisati ihove matrice incidencije, liste susedstva i matrice rastojaa. 49. Na zabavi kod prof. Mozgia uqestvuje n braqnih parova. Nijedna osoba se nije rukovala sa
svojim braqnim drugom, a pritom se svih 2n −1 osoba, osim prof. Mozgia, rukovalo sa razliqitim brojem osoba. Sa koliko osoba se rukovala ena prof. Mozgia? 50. U preduzeu radi 18 radnika. Ako se svaki radnik poznaje sa jox taqno 4 radnika, dokazati
da postoje 2 radnika koji se ne poznaju i nemaju zajedniqkih poznanika. 51. Dat je graf sa 10 qvorova. Odrediti minimalan broj grana koje graf mora da sadri tako da
za proizvonih 5 qvorova (od tih 10) postoje bar 2 grane koje ih povezuju. 52. Na meunarodnom seminaru uqestvuje 1985 matematiqara. Meu svaka 3 uqesnika seminara
mogu se nai 2 koji govore istim jezikom. Ako svaka osoba govori najvixe 5 jezika, dokazati da bar 200 osoba govori istim jezikom. 53. Na konferenciji se nalazi n matematiqara. Svaki qetvoroqlani podskup sadri matema-
tiqara koji poznaje ostalu trojicu. Dokazati da postoji matematiqar koji poznaje sve uqesnike konferencije. (Relacija poznanstva je simetriqna.) 54. U grupi udi svaki qovek ima taqno tri poznanika. Dokazati da je mogue smestiti sve ude
iz te grupe u dve prostorije, tako da svaki qovek ima najvixe jednog poznanika u prostoriji u kojoj je. 55. U dnevnoj sobi se nalazi neki broj udi, i poznato je da svaki od ih poznaje taqno pet
prisutnih. Dokazati da je za neko n > 5 mogue odabrati n udi iz dnevne sobe i smestiti ih za okrugli sto u trpezariji tako da svako sedi izmeu dva poznanika. 56. (2. razred, Savezno 2004 ) Razgovarali su baron Minhauzen i matematiqar. Baron Minhauzen je
rekao da se u egovoj zemi iz svakog grada moe putem stii u bilo koji drugi grad. Pri tome, ako se iz proizvonog grada putuje po zemi proizvonim putem do povratka u taj grad, onda se proe kroz neparan broj usputnih gradova. Matematiqar je pitao koliko puta se broji grad, ako se vixe puta proe kroz ega. Baron je odgovorio da se takav grad broji onoliko puta koliko puta se proe kroz ega. Osim toga, baron Minhauzen je dodao da iz svakog grada u egovoj zemi polazi jednak broj puteva, osim iz egovog rodnog grada iz koga polazi mai broj puteva. Na to je matematiqar rekao da baron Minhauzen lae. Kako je to zakuqio? 57. Na konferenciji je prisutan paran broj matematiqara. Dokazati da postoje 2 matematiqara
koji imaju paran broj zajedniqkih prijatea. (Relacija prijatestva je simetriqna.)
44
4. TEORIJA GRAFOVA
58. Odrediti koliko ima neizomorfnih stabala sa
a) 6; b) 7; v) 8 qvorova. Nacrtati sva ta
stabla. 59. Grad ima kvadratnu mreu sa m ,,horizontalnih“ i n ,,vertikalnih“ ulica (videti nared-
nu sliku). Kolika je najmaa duina dela mree koji treba asfaltirati tako da se od svake raskrsnice do bilo koje druge moe doi asfaltom?
60. Nai dva neizomorfna stabla sa istim nizom stepena qvorova. 61. Neka je T stablo u kome svaki qvor koji je susedan sa listom ima stepen bar 3. Dokazati da
T ima par listova sa zajedniqkim susedom. 62. Kra Xongabonga je imao 4 sina, 10 od egovih muxkih potomaka su imali po 3 sina svaki,
15 od egovih muxkih potomaka su imali po 2 sina svaki, dok su svi ostali umrli bez dece. Ako je poznato da kra Xongabonga nije imao enskih potomaka, koliko je ukupno muxkih potomaka imao ovaj kra? 63. Svaki od kruia na narednoj slici predstava po 1 kuu u kojoj stanuje po 1 ak-pexak.
Linije izmeu kruia predstavaju puteve izmeu kua, koji su svi duine 1km. Gde treba izgraditi xkolu u selu, tako da ukupan put koji prelaze aci-pexaci bude najmai? d
a)
d
d
d d
d
d
d d
b)
d
d
d
d
d
d
d
d
d
d
d
d
d
d
64. Napisati u prefiksnoj i infiksnoj (poskoj i inverznoj poskoj) notaciji sledee izraze
date u infiksnoj notaciji: a, a + b, a + b + c, a + (b + c), a + b ∗ c, a ∗ b ∗ c. 65. Jedan program izgrauje binarno ureeno stablo od reqi koje uqitava sekvencijalno. Svaki
qvor stabla sadri jednu req i pokazivaqe na levo i desno podstablo. Prva req koju program uqita predstava koren stabla. Program uqitava redom reqi 1◦ a,b,c,au;
2◦ b,a,c,au;
3◦ b,c,a,au;
4◦ a,au,b,c.
a) Nacrtati rezultantno stablo u svakom od gora 4 sluqaja. b) Izraqunati sredi broj pristupa qvorovima stabla prilikom traea neke reqi koja se nalazi u tom stablu (uspexno traee). v) Izraqunati sredi broj pristupa qvorovima stabla prineuspexnom traeu reqi x ako je sa jednakom verovatnoom zastupena svaka od sledeih mogunosti: x < a, a < x < au, au < x < b, b < x < c i x > c. (Smatra se da je qitae jednog qvora – jedan pristup.) 66. Jedno binarno stablo ima 4 qvora A, B , C i D . Obilazei stablo na KLD naqin (pre order )
dobijamo redom ABCD. Da li je ovo stablo jednoznaqno odreeno? Ako jeste dati izgled tog stabla, a ako nije dati sve mogue izglede. 67. Nacrtati izgled binarnog ureenog stabla ako elementi dolaze sledeim redom:
20, 28, 24, 10, 26, 18, 4, 40, 2, 3, 6, 30, 27, 38, 25, 5, 8, 7, 9.
Zatim obrisati redom qvorove 4,24,40,5,7. 68. Neka su
1, 3, 12, 4, 5, 8, 9, 15, 19, 17, 30
vrednosti teina listova stabla (tj. frekvencije pojavivaa nekih simbola). Odrediti stablo minimalne srede duine puta. Koliki je sredi broj pristupa pri uspexnom traeu za ovo stablo?