Drzewa Las - graf, który nie zawiera cykli Drzewo - las spójny Jeżeli graf G jest lasem, który ma n wierzchołków i k składowych, to G ma n k krawędzi. Własności drzew Niech T graf o n wierzchołkach będący drzewem (1) T nie zawiera cykli i ma n 1 krawędzi (2) T jest grafem spójnym i każda krawędź jest mostem (3) Każde dwa wierzchołki T są połączone dokładnie jedną drogą (4) T nie zawiera cykli, ale po dodaniu dowolnej nowej krawędzi otrzymamy graf z dokładnie jednym cyklem (5) W każdym drzewie są przynajmniej dwa wierzchołki wiszące. Barbara Głut 1
Drzewo z wyróżnionym korzeniem drzewo, w którym wyróżniono jeden z wierzchołków r p q s t u v w x y z Korzeń r Liście w, x, y, u, z s jest rodzicem w i x. y jest dzieckiem t. Każdy wierzchołek poza korzeniem ma jednego rodzica. Numer poziomu wierzchołka v długość drogi od korzenia do v Wysokość drzewa największy numer poziomu wierzchołka. Tylko liście mogą mieć numer poziomu równy wysokości drzewa. Zliczanie drzew Np. pytanie o liczbę drzew oznakowanych mających daną własność? 1 2 3 4 4 3 2 1 3 4 2 1 Liczba sposobów znakowania takiego drzewa: (4!)/2 = 12 liczba sposobów znakowania drzewa = 4 liczba drzew oznakowanych o 4 wierzchołkach wynosi 12 + 4 = 16 Twierdzenie (Cayley): Istnieje n n-2 różnych drzew oznakowanych o n wierzchołkach. Barbara Głut 2
Drzewa spinające Dopóki w grafie spójnym są cykle: wybieramy cykl w grafie G, usuwamy którąś krawędź cyklu graf pozostaje spójny powstaje drzewo, które spina wszystkie wierzchołki grafu drzewo spinające grafu G - podgraf grafu G będący drzewem i zawierający wszystkie wierzchołki G Każdy graf spójny ma drzewo spinające. U U V Y V Y W X W X Ogólnie: G dowolny graf o n wierzchołkach i m krawędziach oraz k składowych stosujemy procedurę do każdej składowej G => las spinający Rząd cykliczności (liczba cyklomatyczna) grafu G: γ(g) łączna liczba usuniętych krawędzi γ(g) = m n + k Rząd rozcięcia (rząd spójności) grafu G: ξ(g) liczba krawędzi w lesie spinającym ξ(g) = n k Barbara Głut 3
Definicja: Dopełnieniem lasu spinającego T grafu G (niekoniecznie prostego) nazywamy graf otrzymany z grafu G przez usunięcie krawędzi należących do T. V W V W U U Y X Y X Twierdzenie: Jeśli T jest lasem spinającym grafu G, to: (a) każde rozcięcie grafu G ma wspólną krawędź z T (b) każdy cykl w grafie G ma wspólną krawędź z dopełnieniem T. Problem najkrótszych połączeń Wybudować sieć kolejową, która połączy n miast w taki sposób, by pasażerowie mogli podróżować z każdego miasta do dowolnego innego miasta Jeżeli ze względów oszczędnościowych całkowita długość linii ma być najmniejsza, to graf, którego wierzchołkami są te miasta, a krawędziami linie kolejowe, musi być drzewem. Zadanie polega na znalezieniu drzewa spinającego, którego całkowita waga byłaby jak najmniejsza. Rozwiązanie - algorytm zachłanny polegający na wybieraniu krawędzi o najmniejszej wadze w taki sposób, by nie utworzyć cyklu. Barbara Głut 4
A B C D E Pytanie: Które z n n-2 możliwych drzew spinających ma najmniejszą całkowitą wagę? (n n-2 = 125 w tym przypadku) A Zaczynamy od wybrania krawędzi AB o wadze 2 i BD o wadze 3. Następnie DE o wadze 5, a potem BC o wadze 7. B E C D Algorytm Kruskala Niech G graf spójny o n wierzchołkach. (1) wybieramy krawędź e 1 o najmniejszej wadze, (2) definiujemy krawędzie e 2, e 3,..., e n-1 wybierając za każdym razem nową krawędź o najmniejszej możliwej wadze, która nie tworzy cyklu z dotychczas wybranymi krawędziami e i. Podgraf T grafu G, którego krawędziami są krawędzie e 1, e 2,..., e n-1 jest szukanym drzewem spinającym. Barbara Głut 5
Algorytm Prima Niech G graf spójny o n wierzchołkach. E := Wybierz w ze zbioru V(G) i V := {w} Dopóki V V(G) wykonuj wybierz w zbiorze E(G) krawędź {u, v} o najmniejszej możliwej wadze taką, że u V i v V(G) V dołącz krawędź {u, v} do zbioru E i wierzchołek v do zbioru V. Też algorytm zachłanny. W każdym kroku szukana jest krawędź o najmniejszej wadze łącząca jakiś wierzchołek istniejącego do tej pory drzewa spinającego T z nowym wierzchołkiem spoza T. Grafy planarne Graf płaski - graf narysowany na płaszczyźnie w taki sposób, że żadne dwie krawędzie nie przecinają się geometrycznie z wyjątkiem wierzchołków, z którymi są incydentne. Graf planarny - graf izomorficzny z grafem płaskim (graf jest planarny, jeśli może być umieszczony na płaszczyźnie w taki sposób, że takie jego przedstawienie jest grafem płaskim) graf płaski wszystkie trzy - planarne graf płaski Barbara Głut 6
Twierdzenie: Grafy K 3,3 oraz K 5 A są nieplanarne. B E A C D B E C D Homeomorfizm grafów Dwa grafy są homeomorficzne, jeśli mogą być otrzymane z tego samego grafu poprzez umieszczenie nowych wierzchołków stopnia 2 na jego krawędziach. Twierdzenie (Kuratowski,, 1930): Graf jest planarny wtedy i tylko wtedy, gdy nie zawiera podgrafu homeomorficznego z K 3,3 i K 5. Barbara Głut 7
Ściany grafu płaskiego Jeśli G jest grafem planarnym, to każdy rysunek płaski grafu G dzieli zbiór punktów płaszczyzny, które nie leżą na G na obszary zwane ścianami. f 6 f 4 f 1 f 2 f 1 f 2 f 3 f 3 f 4 f 5 Twierdzenie Eulera: Niech G będzie rysunkiem płaskim spójnego grafu planarnego i niech n, m i f oznaczają odpowiednio liczbę wierzchołków, krawędzi i ścian grafu G. Wtedy: n m + f = 2 Twierdzenie: Niech G jest grafem płaskim mającym n wierzchołków, m krawędzi, f ścian oraz k składowych spójnych. Wtedy: n m + f = k + 1 Barbara Głut 8
Grafy dualne Jeśli mamy dany rysunek płaski grafu planarnego G, to konstruujemy graf G *, który nazywamy grafem (geometrycznie) dualnym do grafu G w następujący sposób: (1) wewnątrz każdej ściany f grafu G wybieramy punkt v * te punkty będą wierzchołkami grafu G * ; (2) dla każdej krawędzi e grafu G prowadzimy linię e * przecinającą e (ale nie przecinającą żadnej innej krawędzi grafu G) i łączącą wierzchołki v * ścian f oddzielonych od siebie krawędzią e linie te będą krawędziami grafu G *. Twierdzenie: Niech G będzie spójnym grafem płaskim mającym n wierzchołków, m krawędzi i f ścian oraz niech graf G * geometrycznie dualny do niego ma n * wierzchołków, m * krawędzi i f * ścian. Wtedy: n * = f m * = m f * = n Barbara Głut 9