Setnje i ciklusi u grafu ˇ

5.4 Setnje i ciklusi u grafu ˇ

Mnogi stvarni problemi koje rjeˇsavamo uvodenjem modela grafova svode se na nalaˇzenje putova unutar grafova (primjerice problem keningsberˇskih mostova ili problem kineskog poˇstara). Stoga je znaˇcajno istraˇziti teorijske preduvjete za postojanje takvih rjeˇsenja.

Definicija 5.9 Setnja u grafu G je netrivijalni konaˇcan niz, ˇciji su ˇclanovi ˇ naizmjenice vrhovi i bridovi. Vrhovi su na poˇcetku i kraju ˇsetnje. Vrhovi, koji nisu na poˇcetku ili na kraju, zovu se unutarnji vrhovi. Duljina ˇsetnje k je broj bridova u ˇsetnji. Ako su svi vrhovi u ˇsetnji medusobno razliˇciti,

ˇsetnju zovemo put. Primjer 5.8 U grafu na slici prikazana je ˇsetnja 3d1a2, gdje je 3 poˇcetak

ˇsetnje i 2 kraj ˇsetnje. Duljina ˇsetnje je k=2. Istaknimo joˇs i ˇsetnju 3d1a2b3 koja sadrˇzi prethodnu ˇsetnju i koja nije put.

4 Slika 5.8

Definicija 5.10 Setnja je zatvorena ako joj se podudaraju poˇcetak i kraj. ˇ Definicija 5.11 Zatvorenu ˇsetnju kod koje su poˇcetak i unutraˇsnji vrhovi

razliˇciti, zovemo ciklus. Ako ciklus ima r razliˇcitih bridova i r razliˇcitih vrhova, govorimo o cik-

lusu duljine r ili r −ciklusu. Navedimo sada jedan vaˇzan teorem, koji daje karakterizaciju bipartitnog grafa pomo´cu ciklusa.

Teorem 5.2 Graf G je bipartitan ako i samo ako G ne sadrˇzi cikluse ne- parne duljine.

POGLAVLJE 5. TEORIJA GRAFOVA 201

Ovaj teorem ne´cemo dokazivati, a njegov se dokaz moˇze na´ci u [1], str. 190. Ve´c smo spopmenuli da je pseudograf graf koji moˇze sadrˇzavati petlje i viˇsestruke bridove.

Definicija 5.12 Pseudograf je povezan ako i samo ako postoji ˇsetnja izme- du bilo koja dva njegova vrha.

Piˇsemo v 1 ∼v 2 ako postoji ˇsetnja u grafu koja povezuje vrhove v 1 iv 2 . Zadatak 5.11 Pokaˇzite da je ∼ relacija ekvivalencije na skupu V svih

vrhova grafa G. Budu´ci da je ∼ relacija ekvivalencije na skupu V svih vrhova grafa G, na

skupu V postoji particija tog skupa na disjunktne, neprazne podskupove - klase. Svaki vrh pripada toˇcno jednoj klasi. Svi vrhovi koji pripadaju jednoj klasi medusobno su povezani.

Definicija 5.13 Neka je G (V, E) graf s pripadaju´com particijom s obzirom na relaciju ∼, danom s

V=V 1 ∪V 2 ∪ ... ∪ V r .

Oznaˇcimo s E i (1 ≤ i ≤ r) podskup od E ˇciji bridovi imaju vrhove u V i . Grafovi G i (V i ,E i ) se zovu komponente povezanosti od G. Ako graf ima samo jednu komponentu povezanosti, onda je on povezan.

Navedimo joˇs jedno svojstvo koje imaju izomorfni grafovi. Propozicija 5.2 Neka su G 1 iG 2 izomorfni grafovi. Tada G 1 iG 2 imaju

jedanak broj komponenata povezanosti. Dokaz. Tvrdnju ´cemo dokazati metodom suprotnog. Uzmimo da graf

G 1 ima viˇse komponenata povezanosti od grafa G 2 . To znaˇci da postoje vrhovi koji nisu susjedni u G 1 , a susjedni su u G 2 . Pretpostavimo da dva vrha v 1 iv 2 nisu susjedni u grafu G 1 , ali su f (v 1 ) i f (v 2 ) susjedni u grafu

G 2 . To je u kontradikciji s drugim zahtjevom iz definicije izomorfizma.

5.4.1 Eulerova staza Ova ´ce toˇcka produbiti i proˇsiriti problem keningsberˇskih mostova, iz kojeg

je izrasla teorija grafova. Definicija 5.14 Staza je ˇsetnja u kojoj su svi bridovi razliˇciti.

Eulerova staza (eng. Euler trail) je staza koja prolazi svakim bridom od

G.

5.4. ˇ SETNJE I CIKLUSI U GRAFU Problem keningsberˇskih mostova svodi se na pitanje postoji li Eulerova

staza na grafu? Budu´ci da je Euler prvi prouˇcavao taj problem, njemu u ˇcast, te su posebne staze dobile ime. On je uvidio da ako su a i b dva razliˇcita

vrha, tada je nuˇzan uvjet za postojanje Eulerove staze, koja poˇcinje u a i zavrˇsava u b, da vrhovi a i b imaju neparni stupanj, a da su ostali vrhovi parnog stupnja. Ako je a = b tada svi vrhovi trebaju biti parnog stupnja. Dakle, nuˇzan uvjet za postojanje Eulerove staze u grafu je da graf ima najviˇse dva vrha neparnog stupnja. Pokazuje se da je to ujedno i dovoljan uvjet. Euler je 1736. godine utvrdio da graf keningsberˇskih mostova nema Eulerove staze.

Teorem 5.3 Povezani pseudograf ima Eulerovu stazu ako i samo ako ima najviˇse dva vrha neparnog stupnja.

Dokaz teorema daje ujedno i algoritam za nalaˇzenje Eulerove ture u grafu. Eulerova tura (eng. Euler tour or Euler circuit) je zatvorena Eulerova staza. Eulerova tura u pseudografu G je tura koja sadrˇzi svaki brid i svaki vrh grafa. Graf je Eulerov ako dopuˇsta Eulerovu turu.

Teorem 5.4 (Eulerov teorem) Neprazni povezani graf je Eulerov ako i samo ako su mu svi vrhovi parnog stupnja.

Dokaz. Ve´c je Euler dokazao da ako Eulerova tura postoji, onda u svaki vrh u koji se ude mora biti mogu´ce i iza´ci ˇsto znaˇci da su stupnjevi bridova parni brojevi. Pretpostavimo sada da je pseudograf povezan i svi su vrhovi parnog stupnja i pokaˇzimo da je graf Eulerov. Neka je v vrh u grafu. Ako vrh ima petlji, treba slijediti svaku petlju bez ponavljanja. Budu´ci da je

broj vrhova u grafu barem 2, postoji barem joˇs jedan vrh v 1 , pa poveˇzemo viv 1 .Uv 1 prvo obidemo sve petlje, a onda se pomaknemo u sljede´ci vrh v 2 (ako postoji). Kad god dodemo u novi vrh, prvo obidemo sve petlje, a onda izademo iz vrha. Uvijek je mogu´ce iza´ci iz vrha u koji smo uˇsli, jer je stupanj svakog vrha paran broj. Joˇs se moramo uvjeriti da se moˇzemo

vratiti u vrh v. Uzmimo da smo zaokruˇzili turu C 1 , tj. vratili smo se prvi puta u v. Ako smo pri tome obiˇsli sve bridove, posao je zavrˇsen. Ako to nije sluˇcaj, tj. tura C 1 nije Eulerova, izbacimo iz grafa sve bridove iz C 1 te one vrhove iz C 1 , koji su izbacivanjem bridova ostali izolirani. Promatramo graf

G 1 =G \C 1 i ponavljamo postupak. Budu´ci da je G povezan onda G 1 iC 1 imaju barem jedan zajedniˇcki vrh u. Krenuvˇsi iz vrha u pronalazimo novu turu C u G 1 i kombiniramo je s prethodnom turom, tako da krenemo iz v,

a kad dodemo do vrha u nastavimo dalje turom C dok se ne vratimo u u,

a tada nastavimo dalje u turi C 1 . Tako smo dobili turu C 2 , koja ima viˇse ukljuˇcenih bridova od C 1 . Postupak nastavljamo dok ne iscrpimo sve vrhove

i bridove iz konaˇcnog grafa G.

POGLAVLJE 5. TEORIJA GRAFOVA 203

Euler je u prethodnom teoremu dokazao samo jedan smjer. Tvrdnju da je pseudograf Eulerov ako su mu svi vrhovi parnog stupnja, dokazao je Carl Hierholzer 1873. godine.

Korolar 5.2 Povezani graf ima Eulerovu stazu ako i samo ako ima najviˇse dva vrha neparnog stupnja. Ako ima toˇcno dva vrha neparnog stupnja, onda Eulerova staza mora poˇceti i zavrˇsiti u tim vrhovima.

Dokaz. Prema Eulerovom teoremu graf nema vrhova neparnog stupnja ako i samo ako dopuˇsta Eulerovu turu. Dakle, pretpostavimo da graf G ima vrhove neparnog stupnja.

Pretpostavimo da graf G = (V, E) ima Eulerovu stazu koja nije zatvo- rena. Unutraˇsnji vrhovi staze su uvijek incidentni s dva brida, pa krajnji vrhovi staze imaju neparne stupnjeve, a svi ostali vrhovi imaju parne stup- njeve.

S druge strane, znamo da je broj vrhova neparnog stupnja paran broj. Dakle,u grafu ne moˇze biti samo jedan vrh neparnog stupnja koji ima Eule- rovu stazu.

Neka su sada v i iv j jedina dva vrha u G koji imaju neparan stupanj. Promotrimo dva sluˇcaja. Prvi sluˇcaj: vrhovi v i iv j nisu susjedni. Dodamo li njihovu spojnicu, brid e ij , u skup svih bridova u grafu G, tada ´ce tako uve´cani graf imati sve vrhove parnog stupnja i dopuˇstat ´ce Eulerovu turu. Brisanjem brida e ij iz Eulerove ture dobit ´cemo Eulerovu stazu koja poˇcinje u v i i zavrˇsava u v j ili obrnuto.

Drugi sluˇcaj: vrhovi v i iv j jesu susjedni. Sada skupu vrhova od G dodamo novi vrh v n , za koji vrijedi da ga brid e ni veˇze s vrhom v i , a brid

e nj sv j . Pri tome smo skup bridova E od G uve´cali za dva brida e ni i

e nj . Sada su u uve´canom grafu svi vrhovi parnog stupnja, pa graf dopuˇsta zatvorenu Eulerovu stazu. Brisanjem vrha v n i bridova e ni ie nj iz G u G ostaje Eulerova staza kojoj su vrhovi v i iv j krajnje toˇcke.

Naglasimo da Eulerov teorem i gornji korolar vrijede i u grafu koji sadrˇzi viˇsestruke bridove, tzv. pseudografu. Postoji algoritam za traˇzenje Eulerove staze u grafu. Algoritam je pro- naˇsao Edouard Lucas (1842-1891), ali ga je posvetio M. Fleuryju, pa ga zovemo Fleuryjev algoritam. Algoritam se temelji na brisanju onih bridova iz grafa koji ne utjeˇcu na povezanost grafa (do kada je to mogu´ce).

Brid e ij je most (engl. bridge) u G ako njegovo brisanje daje podgraf od

G s viˇse komponenti povezanosti. Algoritam 5.1 (Fleuryjev algoritam)

ULAZ: Povezani graf G = (V, E) ˇciji su svi bridovi parnog stupnja. IZLAZ: Eulerova tura u G.

1. Izaberi bilo koji vrh v 0 ∈ V . Stavi T 0 = (v 0 )iG 0 = G = (V, E).

5.5. MATRICA INCIDENCIJE I MATRICA SUSJEDSTVA

2. k := 0.

3. Neka je T k = (v 0 ,...,v k ). Iz G k treba izabrati brid koji je incidentan sv k i to tako da biramo most ako i samo ako nemamo drugog izbora. Oznaˇcimo drugi kraj izabranog brida s v k +1 .

4. Graf G k +1 se dobija iz G k brisanjem brida e k,k +1 , tj. G k +1 = (V, E k +1 ) pri ˇcemu je E k +1 =E k \{e k,k +1 }).

5. Ako G k +1 nije nulgraf, stavi k := k + 1 i idi na korak 3. Ako je G k +1 nullgraf, onda je T k +1 Eulerova tura.

Zadatak 5.12 Pokaˇzite da je Fleuryjev algoritam korektan i pronadite mu sloˇzenost.

Zadatak 5.13 Nadite uvjete pod kojima su potpuni grafovi i potpuni bi- partitni grafovi Eulerovi.