Wprowadzenie do teorii grafów. Dr inż. Krzysztof Lisiecki

Wielkość: px
Rozpocząć pokaz od strony:

Download "Wprowadzenie do teorii grafów. Dr inż. Krzysztof Lisiecki"

Transkrypt

1 1

2 Reguły gry (1): Uczymy się systematycznie Nie używamy telefonów Zaliczamy w terminie 2

3 Kontakt: konsultacje poniedziałek (pokój wykładowców) krzysztof.lisiecki@p.lodz.pl lub krzysztof@lisiecki.org.pl http: (materiały dydaktyczne, terminy, ważne komunikaty) tel. do pok. 512 (akwarium) (0-42)

4 Reguły gry: Sposób zaliczenia przedmiotu: Kolokwium wykładowe (30 pytań, każde 1p.) Praca domowa max. 6 punktów Przeliczanie punktów p. 3 na oceny p. 3, p p p. 4 4,5 5 4

5 Reguły gry (3): Terminy wykładów: poniedziałki Termin zaliczenia przedostatni wykład r. (poniedziałek) godz Termin oddania pracy domowej (ostatni wykład) 5

6 Czy można przejść przez wszystkie mosty, przez każdy przechodząc dokładnie jeden raz? 6

7 wyspa Kneiphof x rzeka Pregoła Czy można przejść przez wszystkie mosty, przez każdy przechodząc dokładnie jeden raz? 7

8 Odpowiedź na postawione pytanie jest negatywna i wynika z twierdzenia, które zapoczątkowało teorię grafów: W grafie można znaleźć cykl Eulera wtedy i tylko wtedy, gdy graf jest spójny i każdy jego wierzchołek ma parzysty stopień. 8

9 Grafem nazywamy parę G=(X,G), złożoną ze skończonego zbioru punktów X oraz skończonego zbioru linii G. Punkty ze zbioru X nazywamy wierzchołkami grafu G, a linie zbioru G krawędziami grafu. 9

10 Krawędzie stanowią połączenia pomiędzy wierzchołkami grafu. Dopuszczamy przy tym, aby krawędź łączyła wierzchołek sam ze sobą. Nazywamy ją wtedy pętlą. 10

11 Schematycznie graf przedstawiamy w postaci rysunku. 11

12 12

13 Zagadnienie mostów królewieckich (L.Euler, 1736) Zagadnienie najkrótszej drogi (algorytm Dijkstry) Problem chińskiego listonosza (Mei Ku Kwan, 1962) Problem komiwojażera (cykl Hamiltona) 13

14 14

15 Inne zastosowania Analiza wzorów strukturalnych związków chemicznych Analiza obwodów elektrycznych Problemy kolorowania map (twierdzenie o czterech barwach) Problem kojarzenia małżeństw 15

16 Krawędź łączącą wierzchołki Xi oraz Xj będziemy zapisywać jako parę nieuporządkowaną {Xi, Xj }. Gdy nie da się stwierdzić, który z wierzchołków jest początkiem, a który końcem krawędzi to taki graf nazywamy nieskierowanym. 16

17 Gdy określimy, który z wierzchołków jest początkiem, a który końcem krawędzi, to wówczas taką krawędź nazywamy łukiem. Łuk łączący wierzchołek Xi z wierzchołkiem Xj (od wierzchołka Xi do wierzchołka Xj ) będziemy zapisywać jako parę uporządkowaną (Xi, Xj ). 17

18 Graf G=(X,G), nazywamy nieskierowanym (niezorientowanym), gdy zbiór G składa się z samych krawędzi. 18

19 Graf G=(X,G), nazywamy digrafem (directed graph) lub grafem skierowanym (zorientowanym), gdy zbiór G składa się z samych łuków. 19

20 Grafem pustym nazywamy graf składający się jedynie z wierzchołków, nie zawierający żadnych krawędzi. 20

21 Podgrafem grafu G=(X,G), nazywamy każdy graf G =(X,G ) taki, że X X oraz G G. Dopuszczamy przypadki, gdy X =X lub G =G. 21

22 Przykładem podgrafu danego grafu jest on sam. Przykładem podgrafu jest także dowolny graf powstały z danego grafu przez usunięcie z niego dowolnej liczby krawędzi (nawet wszystkich ) lub dowolnej liczby wierzchołków (nie wszystkich) 22

23 Przykład podgrafu 23

24 Grafem prostym nazywamy graf, który nie zawiera pętli i, w którym zbiór krawędzi jest zbiorem bez powtórzeń. Multigrafem nazywamy graf, w którym zbiór krawędzi zawiera powtórzenia. 24

25 Grafem zupełnym (grafem pełnym) nazywamy graf, w którym dla każdej pary wierzchołków istnieje krawędź łącząca te wierzchołki. Graf zupełny o n wierzchołkach oznaczamy często Kn 25

26 Przykłady grafów zupełnych 26

27 Przykłady grafów zupełnych 27

28 Przykłady grafów zupełnych 28

29 Dopełnieniem grafu G nazywamy graf o tym samym zbiorze wierzchołków, który zawiera te wszystkie krawędzie grafu zupełnego o zbiorze wierzchołków, które nie występują w grafie G. 29

30 Wymiarem grafu G nazywamy liczbę jego wierzchołków. Oznaczamy ją dimg 30

31 Grafem rzadkim nazywamy graf, w którym liczba krawędzi ( łuków) jest dużo mniejsza od kwadratu liczby wierzchołków Grafem gęstym nazywamy graf, w którym liczba krawędzi ( łuków) jest bliska kwadratowi liczby wierzchołków. 31

32 Jeżeli do wierzchołka Xi dochodzi krawędź gk, to mówimy, że wierzchołek Xi jest incydentny z krawędzią gk. Dwa wierzchołki incydentne z tą samą krawędzią nazywamy sąsiednimi lub zależnymi. Inaczej mówiąc, dwa wierzchołki sąsiadują ze sobą, jeżeli istnieje krawędź (łuk) łącząca te wierzchołki. 32

33 Mówimy, że wierzchołek jest izolowany, jeśli nie jest incydentny z żadną krawędzią. 33

34 Stopniem wierzchołka w grafie (nieskierowanym) nazywamy liczbę krawędzi grafu incydentnych z tym wierzchołkiem. stopień wierzchołka Xi oznaczać będziemy deg Xi. Każda pętla w wierzchołku zwiększa jego stopień o 2. Wierzchołek izolowany ma stopień zero. 34

35 Przykład 35

36 Jeśli graf posiada m krawędzi oraz X = { X 1,..., X n } n i= 1 to deg X i = 2m 36

37 Wniosek W dowolnym grafie jest parzysta ilość wierzchołków nieparzystego stopnia. 37

38 Graf nazywamy regularnym, gdy każdy jego wierzchołek ma ten sam stopień. 38

39 Drogą w grafie G (zorientowanym lub nie) nazywamy każdy ciąg { X 1, g1, X 2,..., X n, g n, X n+ 1 } X 1,..., X n + 1 X, g1,..., g n G taki, że koniec jednej krawędzi (łuku) jest początkiem innej. 39

40 Drogę w grafie G nazywamy zamkniętą, gdy X n+ 1 = X 1 40

41 Drogę w grafie nazywamy elementarną, gdy wszystkie jej wierzchołki są różne. Drogę w grafie nazywamy prostą, jeżeli wszystkie jej krawędzie (łuki) są różne. Drogę prostą zamkniętą nazywamy cyklem (obwodem). Cykl nazywamy elementarnym, jeżeli jest drogą elementarną (wszystkie wierzchołki są różne). 41

42 Graf, który nie zawiera cykli nazywamy grafem acyklicznym. Drogą acykliczna nazywamy drogę, dla której graf składający się z wierzchołków i łuków tworzących drogę jest acykliczny. 42

43 Twierdzenie Jeżeli droga zamknięta { X 1, g1, X 2,..., X n, g n, X 1 } jest długości co najmniej 3 i wierzchołki X 1,..., X n są różne, to jest cyklem. 43

44 Mówimy, że droga ma długość n jeśli jest postaci { X 1, g1, X 2,..., X n, g n, X n + 1 } oraz przyporządkowanie łukowi pary wierzchołków ( Xi, X i+ 1 ) jest funkcją. Dopuszczamy sytuacje, w których łuk łączy wierzchołek ze sobą. Taką drogę nazywamy pętlą. 44

45 Odległością między dwoma wierzchołkami w grafie nazywamy długość najkrótszej drogi łączącej te wierzchołki. Średnicą grafu nazywamy maksimum spośród wszystkich odległości między wierzchołkami grafu. 45

46 Poniżej widzimy graf o średnicy 4 46

47 Grafem z wagami (grafem ważonym) nazywamy graf, w którym każdej krawędzi (łukowi) przypisana jest pewna liczba nieujemna zwana wagą danej krawędzi. Innymi słowy, na zbiorze krawędzi (łuków) każdego grafu możemy określić pewną funkcję, która danej krawędzi (łukowi) łączącej wierzchołek Xi z wierzchołkiem Xk przypisuje pewna liczbę w(i,k). 47

48 Gdy nie istnieje krawędź (łuk) łącząca wierzchołek z wierzchołkiem Xi z wierzchołkiem Xk wówczas przyjmujemy w(i,k)=, chociaż w niektórych przypadkach wygodnie jest przyjąć w(i,k)=0. 48

49 Wagą drogi w grafie ważonym nazywamy sumę wag krawędzi (łuków) tworzących tę drogę. 49

50 Uwaga: Każdy graf, w którym nie jest określona funkcja wagowa możemy traktować jako graf z wagami przyjmując wagę każdej krawędzi równą jeden. Wówczas droga o najmniejszej wadze łącząca dane dwa wierzchołki jest równa odległości tych wierzchołków. 50

51 Wagą grafu nazywamy sumę wag wszystkich jego krawędzi 51

52 Waga poniższego grafu wynosi

53 Graf nazywamy spójnym, jeżeli dla każdej pary jego wierzchołków istnieje droga łącząca te wierzchołki. 53

54 Składową spójną grafu nazywamy każdy jego spójny podgraf, który nie jest jednocześnie podgrafem innego grafu spójnego. Składową spójną jest też wierzchołek izolowany. 54

55 Graf o trzech spójnych składowych 55

56 Krawędź grafu, której usunięcie zwiększa liczbą jego spójnych składowych nazywamy mostem. most most 56

57 Twierdzenie Jeżeli G jest grafem prostym wymiaru n, posiada m krawędzi oraz k spójnych składowych, to spełniona jest nierówność n k m ( n k )( n k + 1) 2 57

58 Dla n=8 oraz k=3 mamy 5 m 15 Rys.2 Rys.1 58

59 Wniosek Jeżeli graf prosty wymiaru ma więcej niż ( n 1)( n 2) 2 krawędzi, to jest spójny. 59

60 Wniosek Jeśli graf prosty jest spójny wymiaru n posiada m krawędzi, to n ( n 1) n 1 m 2 60

61 Przykład Dla n=4 mamy 3 m 6 61

62 Dwa grafy G1 = ( X 1, G1 ) oraz G2 = ( X 2, G2 ) nazywamy izomorficznymi, gdy istnieje wzajemnie jednoznaczne odwzorowanie (bijekcja) zbiorów ich wierzchołków takie, że liczba krawędzi łączących dane dwa wierzchołki pierwszego grafu jest równa liczbie krawędzi łączących odpowiadające im wierzchołki grafu drugiego. 62

63 Wprost z definicji izomorfizmu grafów wynika, że grafy izomorficzne mają: ten sam wymiar (liczbę wierzchołków), tę samą liczbę krawędzi, tę samą liczbę pętli, tę sama liczbę wierzchołków o danym stopniu. 63

64 Przykład Rys. a Rys. b 64

65 Grafy z rysunków są izomorficzne, a odpowiednie odwzorowanie zbioru wierzchołków grafu z rysunku a) na zbiór wierzchołków grafu z rysunku b) przedstawia poniższa tabelka: Wierzchołek z grafu z rys. a) Wierzchołek z grafu z rys. b) D A C E B 65

66 UWAGA: Spełnienie powyższych czterech warunków dla dwóch grafów nie upoważnia nas jeszcze do stwierdzenia, że są one izomorficzne! 66

67 Przykład Grafy nieizomorficzne spełniające warunki

68 Grafem planarnym nazywamy graf, który możemy narysować na płaszczyźnie tak, aby jego krawędzie nie przecinały się. Uwaga: Fakt, że rysunek grafu zawiera przecinające się krawędzie nie oznacza, że graf nie jest planarny. 68

69 Przykładem jest graf (rys. a), który można narysować w ten sposób, by jego krawędzie nie przecinały się (rys. b). Jest to zatem graf planarny. Rys. b Rys. a 69

70 Twierdzenie Każdy prosty graf planarny można narysować za pomocą odcinków. 70

71 71

72 72

73 73

74 Grafy platońskie, to grafy utworzone z wierzchołków i krawędzi pięciu wielościanów foremnych 74

75 Grafy platońskie czworościan foremny (tetraedr) 75

76 Grafy platońskie sześcian (heksaedr) 76

77 Grafy platońskie ośmiościan foremny (oktaedr) 77

78 Grafy platońskie dwunastościan foremny (dodekaedr) 78

79 Grafy platońskie dwudziestościan foremny (ikosaedr) 79

80 Miarą nieplanarności grafu jest liczba przecięć. Liczbą przecięć grafu G nazywamy najmniejszą liczbę przecięć, które muszą wystąpić, aby dany graf narysować na płaszczyźnie. Liczbę przecięć grafu G oznaczamy cr(g). Dla dowolnego grafu planarnego liczba przecięć jest równa zero. 80

81 cr (G). =1 81

82 Rysunek grafu planarnego dzieli płaszczyznę na obszary (ściany), z których jeden jest nieograniczony (rys. poniżej). 82

83 Twierdzenie Eulera (1750) Jeżeli G jest grafem planarnym spójnym wymiaru n, posiadającym m krawędzi oraz f ścian, to n m+ f = 2 83

84 Przykład n=8, m=11, f=5 n-m+f=8-11+5=2 84

85 Wniosek z tw. Eulera Jeżeli G jest grafem planarnym wymiaru n, posiadającym k spójnych składowych, m krawędzi oraz f ścian, to n m+ f = k

86 Przykład n=9, k=2 m=10, f= =2+1 86

87 Dla danego grafu możemy stworzyć jego opis macierzowy budując: macierz sąsiedztwa, macierz incydencji, lub macierz cykli (obwodów) 87

88 Niech G=(X,G) będzie dowolnym grafem nieskierowanym wymiaru n. Macierzą sąsiedztwa grafu G nazywamy macierz kwadratową, A = [aij ]i, j n której elementy określamy następująco: aij jest liczbą krawędzi od wierzchołka do wierzchołka X j 88

89 Widzimy więc, że elementy macierzy są liczbami dodatnimi lub zerami, przy czym element aij = 0 wtedy i tylko wtedy, gdy nie istnieje krawędź od wierzchołka X i do wierzchołka X j Macierz sąsiedztwa grafu nieskierowanego niesie wiele informacji na temat grafu. 89

90 wymiar macierzy n n mówi, że graf ma wymiar n (liczba wierzchołków), ilość jedynek na głównej przekątnej jest równa ilości pętli, Jeśli graf nie ma pętli, to suma wszystkich elementów macierzy jest równa podwojonej liczbie krawędzi w grafie, 90

91 macierz sąsiedztwa grafu nieskierowanego jest macierzą symetryczną, Jeżeli graf nie ma pętli, to suma elementów i-tego wiersza (i-tej kolumny) jest równa stopniowi wierzchołka 91

92 Niech G=(X,G) będzie dowolnym grafem skierowanym wymiaru n. Macierzą sąsiedztwa grafu G nazywamy macierz kwadratową, A = [aij ]i, j n której elementy określamy następująco: aij jest liczbą łuków od wierzchołka Xi do wierzchołka X j 92

93 Macierz sąsiedztwa grafu skierowanego niesie takie informacje na temat grafu skierowanego jak macierz grafu nieskierowanego. Wystarczy we własnościach 1 5 zamienić słowo krawędź na słowo łuk. 93

94 Przykład Graf nieskierowany i jego macierz sąsiedztwa

95 Przykład Graf skierowany i jego macierz sąsiedztwa

96 Macierzą incydencji grafu wymiaru n bez pętli posiadającego m krawędzi nazywamy macierz A wymiaru n m, której elementy określone są wzorem 1, jeśli j ta krawędź jest aij = incydentna z i tym wierzcholkiem 0 w przeciwnym razie 96

97 a b c d e f Przykład g Graf i jego macierz incydencji

98 Własności macierzy incydencji Każda kolumna macierzy zawiera dokładnie dwie jedynki, Liczba jedynek w każdym wierszu jest równa stopniowi odpowiadającego mu wierzchołka, 98

99 Własności macierzy incydencji c.d. 2. Wiersz złożony z samych zer reprezentuje wierzchołek izolowany, 3. Krawędzie równoległe tworzą w macierzy identyczne kolumny, 99

100 Własności macierzy incydencji c.d. 2. Jeśli graf ma dwie spójne składowe, to jego macierz incydencji jest macierzą blokową postaci A1 0 0 A2 gdzie macierze w lewym górnym i prawym dolnym rogu są, odpowiednio, macierzami incydencji każdej składowej spójnej grafu 100

101 Uwaga: Jeśli składowych spójnych jest k, to macierz incydencji można zapisać w postaci blokowej A A Ak 101

102 Własności macierzy incydencji c.d. 2. Permutacja dwóch wierszy lub kolumn w macierzy incydencji odpowiada przeetykietowaniu wierzchołków i krawędzi tego samego grafu. 102

103 Wniosek: Dwa grafy są izomorficzne wtedy i tylko wtedy i tylko wtedy gdy ich macierze incydencji różnią się tylko permutacją wierszy i kolumn. 103

104 Przykład

105 Twierdzenie Rząd macierzy incydencji grafu spójnego wymiaru n jest równy n

106 Twierdzenie o rzędzie macierzy grafu spójnego mówi, że jeden z wierszy jego macierzy incydencji jest liniowo zależny od pozostałych. Sugeruje to, że wszystkie informacje o grafie wymiaru n zawarte są w n-1 wierszach macierzy incydencji. 106

107 Zredukowaną macierzą incydencji grafu nazywamy macierz otrzymaną z macierzy incydencji przez usunięcie dowolnego wiersza. Macierz ta ma wymiary (n-1) m 107

108 Wprost z definicji wynika Twierdzenie Macierz incydencji grafu spójnego wymiaru n posiadającego n-1 krawędzi jest nieosobliwą macierzą kwadratową wymiaru n-1 108

109 Macierzą cykli (obwodów) grafu posiadającego m krawędzi nazywamy macierz A wymiaru n m, której elementy określone są wzorem 1, aij = 0 jeśli i ty cykl zawiera j tą krawędź w przeciwnym razie 109

110 Przykład Graf i jego cykle 110

111 111

112 Macierz cykli grafu

113 Własności macierzy cykli Kolumna zer odpowiada krawędzi nie należącej do żadnego cyklu, Każdy wiersz zawiera te i tylko te krawędzie, które tworzą odpowiadający mu cykl 113

114 Własności macierzy cykli c.d. 2. Wiersz odpowiadający pętli zawiera tylko pojedynczą jedynkę, 3. Liczba jedynek w wierszu jest równa liczbie krawędzi w odpowiadającym mu cyklu, 114

115 Własności macierzy cykli c.d. 2. Przestawienie dowolnych dwóch wierszy lub kolumn w macierzy cykli odpowiada przeetykietowaniu cykli i krawędzi, 3. Grafy o identycznych macierzach cykli nie muszą być izomorficzne 115

116 Zastosowanie macierzy sąsiedztwa Problemy: Ile krawędzi łączy dwa dane wierzchołki grafu? Ile dróg długości n łączy dwa dane wierzchołki grafu? 116

117 Ile jest dróg łączących wierzchołek 2 z wierzchołkiem 4 o długości: b) 1, c) 2, d)

118 Twierdzenie Jeżeli A jest macierzą grafu o wierzchołkach X1, X2,,Xn, to element aij w macierzy Am jest równy liczbie dróg długości m łączących wierzchołek Xi z wierzchołkiem Xj 118

119 0 1 1 A = A 3 = A 2 =

120 Drogą Eulera w grafie nazywamy każdą drogę prostą, która zawiera wszystkie krawędzie grafu. 120

121 Przykład drogi Eulera { X 1, g 8, X 6, g 7, X 3, g 2, X 1, g1, X 2, g 3, X 3, g 4, X 4, g 5, X 5, g 6, X 6 } 121

122 Przykład grafu, który nie zawiera drogi Eulera 122

123 Cyklem Eulera nazywamy zamkniętą drogę Eulera. 123

124 Przykład Cyklem Eulera jest droga { X 1, g1, X 2, g 2, X 3, g 3, X 4, g 4, X 5, g 5, X 6, g 6, X 3, g 7, X 1 } 124

125 Twierdzenie W grafie spójnym, posiadającym co najwyżej dwa wierzchołki stopnia nieparzystego istnieje droga Eulera. 125

126 Twierdzenie (Euler, 1736) Jeżeli graf G posiada cykl Eulera, to jest spójny i każdy jego wierzchołek ma parzysty stopień. 126

127 Przykład grafu posiadającego cykl Eulera 127

128 Prawdziwe jest również twierdzenie odwrotne. Twierdzenie Jeżeli graf G jest spójny i stopień każdego wierzchołka jest parzysty to posiada cykl Eulera 128

129 129

130 Algorytm wyznaczania drogi Eulera w grafie. Wybieramy w grafie dowolny wierzchołek nieparzystego stopnia. Jeśli taki nie istnieje wybieramy dowolny parzystego stopnia. Wybrany wierzchołek oznaczamy przez X. 130

131 1. Dopóki w grafie są krawędzie incydentne z wierzchołkiem X wykonujemy jedną z poniższych czynności 131

132 a) jeżeli z wierzchołkiem X jest incydentna dokładnie jedna krawędź g, łącząca ten wierzchołek z wierzchołkiem Y, to podstawiamy X:=Y, zapisujemy g jako kolejny wyraz ciągu oraz usuwamy tę krawędź z grafu. 132

133 b) jeżeli z wierzchołkiem X incydentna jest więcej niż jedna krawędź, to wybieramy dowolną, która nie jest mostem o postępujemy dalej tak jak w punkcie a. 133

134 3. a) jeśli otrzymany przez nas ciąg zawiera wszystkie krawędzie grafu oznacza to, że znaleźliśmy drogę Eulera 134

135 3. b) jeśli otrzymany przez nas ciąg nie zawiera wszystkich krawędzi grafu oznacza to, że graf nie jest spójny 135

136 Przykład { X 2, g2, X 3} 136

137 { X 2, g2, X 3, g3, X 4 } 137

138 { X 2, g2, X 3, g3, X 4, g4, X 5 } 138

139 { X 2, g2, X 3, g3, X 4, g4, X 5, g5, X 2 } 139

140 { X 2, g 2, X 3, g 3, X 4, g 4, X 5, g 5, X 2, g1, X 1 } 140

141 { X 2, g 2, X 3, g 3, X 4, g 4, X 5, g 5, X 2, g1, X 1, g 9, X 6 } 141

142 { X 2, g 2, X 3, g 3, X 4, g 4, X 5, g 5, X 2, g1, X 1, g 9, X 6, g 8, X 4 } 142

143 { X 2, g 2, X 3, g 3, X 4, g 4, X 5, g 5, X 2, g1, X 1, g 9, X 6, g 8, X 4, g 7, X 6 } 143

144 { X 2, g 2, X 3, g 3, X 4, g 4, X 5, g 5, X 2, g1, X 1, g 9, X 6, g 8, X 4, g 7, X 6, g 6, X 5 } 144

145 Animacja 1 Animacja 2 145

146 Definicja Stopniem wejściowym wierzchołka w grafie zorientowanym nazywamy ilość łuków wchodzących do wierzchołka. Stopień wejściowy wierzchołka Xi oznaczamy indegxi. 146

147 Definicja Stopniem wyjściowym wierzchołka w grafie zorientowanym nazywamy ilość łuków wychodzących z wierzchołka. Stopień wejściowy wierzchołka Xi oznaczamy outdegxi. 147

148 Wniosek Dla dowolnego wierzchołka Xi w grafie zorientowanym zachodzi równość in deg X i + out deg X i = deg X i 148

149 Twierdzenie Załóżmy, że graf skierowany traktowany jako nieskierowany jest spójny. Wówczas istnieje w nim cykl Eulera wtedy i tylko wtedy, gdy stopień wejściowy każdego wierzchołka jest równy jego stopniowi wyjściowemu. 149

150 Graf, który nie posiada cyklu Eulera 150

151 Graf, który posiada cykl Eulera 151

152 Wcześniej podana była zależność między ilością krawędzi w grafie niezorientowanym a sumą stopni wierzchołków. Teraz przytoczymy udowodnione przez Istvana Reimana twierdzenie pozwalające oszacować z góry ilość krawędzi w grafie wymiaru n nie zawierającym cykli o długości

153 Twierdzenie. Jeżeli graf G=(X,G) wymiaru n nie zawiera cykli długości 4, to ilość krawędzi m spełnia nierówność n m ( n 3 ) 153

154 Przykład. Jeśli graf ma wymiar 6 i nie zawiera cykli o długości 4, to 6 m ( ) = ( ) 8,37 154

155 Definicja. Drzewem nazywamy graf spójny bez cykli. 155

156 Definicja. Lasem nazywamy graf bez cykli 156

157 Twierdzenie Niech G będzie grafem wymiaru n. Wówczas następujące stwierdzenia są równoważne: 3. G jest drzewem 4. G nie zawiera cykli i ma n-1 krawędzi 5. G jest spójny i ma n-1 krawędzi 157

158 G jest spójny i każda krawędź jest mostem dowolne dwa wierzchołki grafu G są połączone dokładnie jedną droga graf G nie zawiera cykli a dołączenie dowolnej nowej krawędzi do G tworzy dokładnie jeden cykl G jest grafem acyklicznym mającym n-1 krawędzi 158

159 Wniosek W drzewie o co najmniej dwóch wierzchołkach, co najmniej dwa z nich są stopnia

160 Definicja Drzewem ukorzenionym nazywamy drzewo z wyróżnionym wierzchołkiem 160

161 Przykład 161

162 Definicja. Dla grafu spójnego G=(X,G) każde drzewo GT=(X,T) takie, że T G nazywamy drzewem spinającym grafu G. 162

163 Twierdzenie. Każdy graf skończony spójny ma drzewo spinające. 163

164 Twierdzenie. Każdy graf skończony ma las spinający. 164

165 Twierdzenie (Cayley, 1889) Graf pełny Kn (dla n 2 ) ma n n-2 różnych drzew spinających. 165

166 166

167 167

168 Definicja Wagą drzewa (jako grafu z wagami) nazywamy sumę wag jego krawędzi (łuków). 168

169 Przykład Waga drzewa przedstawionego na rysunku poniżej wynosi

170 Listy sąsiedztwa, to tablica złożona z list, których liczba jest równa wymiarowi grafu (liczbie jego wierzchołków). Dla każdego wierzchołka odpowiadająca mu lista składa się z tych, i tylko tych, wierzchołków grafu, które z nim sąsiadują. 170

171 Listy sąsiedztwa najlepiej nadają się do reprezentowania grafów rzadkich, natomiast dla reprezentacji grafów gęstych zdecydowanie lepiej wybrać macierz. 171

172 Twierdzenie Suma długości wszystkich list sąsiedztwa grafu (nieskierowanego) jest równa podwojonej liczbie krawędzi tego grafu. Suma długości wszystkich list sąsiedztwa digrafu (grafu skierowanego) jest równa liczbie łuków tego grafu. 172

173 Przykład 173

174 174

175 175

176 Najważniejszymi i najbardziej znanymi algorytmami grafowymi są: przeszukiwanie wszerz oraz przeszukiwanie w głąb. 176

177 W trakcie działania algorytmu przeszukiwania możemy wyróżnić w zbiorze wierzchołków grafu dwa rozłączne podzbiory: wierzchołków już odwiedzonych i wierzchołków jeszcze nie odwiedzonych. 177

178 W przypadku drzewa ukorzenionego, narysowanego tak, że korzeń jest na górze granica pomiędzy tymi zbiorami przebiega poziomo dla przeszukiwania wszerz, natomiast pionowo dla przeszukiwania w głąb. 178

179 Przeszukiwanie wszerz 179

180 Przeszukiwanie w głąb 180

181 Algorytm przeszukiwania wszerz polega na kolejnym odwiedzaniu najpierw wierzchołków, których odległość od korzenia wynosi 1, następnie 2, potem 3 itd. Zatem zanim zagłębimy się bardziej w grafie sprawdzamy wcześniej wszystkie możliwe wierzchołki na danym poziomie. 181

182 Idea algorytmu przeszukiwania w głąb polega na odwiedzeniu jak największej liczby wierzchołków przesuwając się możliwie najdalej w głąb grafu, a dopiero później przejściu do pozostałych wierzchołków. 182

183 W trakcie przeszukiwania grafów za pomocą obu algorytmów budowane jest znakowane drzewo przeszukiwań. Rozpoczynając od korzenia nadajemy każdemu wierzchołkowi etykietę ze zbioru liniowo uporządkowanego, najczęściej ze zbioru {1, 2, 3,..., n} 183

184 Algorytm przeszukiwania grafu wszerz Zakładamy, że przeszukiwany graf jest reprezentowany przez listy sąsiedztwa. Przeszukiwanie zaczynamy od wierzchołków znajdujących się na liście sąsiedztwa korzenia przeszukujemy je kolejno dołączając do drzewa przeszukiwań kolejne wierzchołki z listy i łączące je z korzeniem krawędzie. 184

185 Następnie przechodzimy do listy sąsiedztwa wierzchołka, który był pierwszy na liście sąsiedztwa korzenia i kolejno przeszukujemy znajdujące się tam wierzchołki dołączając jednocześnie te wierzchołki do drzewa przeszukiwań. Analogicznie postępujemy z listami sąsiedztwa kolejnych wierzchołków znajdujących się na liście sąsiedztwa korzenia. 185

186 Po wyczerpaniu się wierzchołków na liście sąsiedztwa korzenia przechodzimy do przeszukiwania wierzchołków znajdujących się na listach sąsiedztwa wierzchołków, które znalazły się na listach sąsiedztwa wierzchołków z listy sąsiedztwa korzenia, itd. 186

187 Przykład Stosując algorytm przeszukiwania wszerz zbudować drzewo przeszukiwań poniższego grafu przyjmując, że korzeniem jest wierzchołek b. 187

188 188

189 {b} 189

190 {b,a} 190

191 {b,a,e} 191

192 {b,a,e,f} 192

193 {b,a,e,f,c} 193

194 {b,a,e,f,c,d} 194

195 {b,a,e,f,c,d,g} 195

196 {b,a,e,f,c,d,g,h} Listy puste - stop 196

197 Algorytm przeszukiwania grafów w głąb Podobnie jak w przypadku algorytmu przeszukiwania wszerz, do przeszukiwania w głąb wygodnie jest reprezentować graf za pomocą list sąsiedztwa. 197

198 Przeszukiwanie zaczynamy od korzenia, ale w przeciwieństwie do przeszukiwania wszerz, nie przeszukujemy kolejno wszystkich wierzchołków z listy sąsiedztwa korzenia, ale najpierw jeden z nich (pierwszy) a następnie pierwszy wierzchołek na liście sąsiedztwa tego wierzchołka. 198

199 Postępujemy tak do momentu, w którym nie możemy już wejść głębiej a dalsze przeszukiwanie wymaga cofnięcia się do poprzednio odwiedzonego wierzchołka i przeszukiwanie kolejnego wierzchołka na liście sąsiedztwa. 199

200 200

201 {b} 201

202 {b,a} 202

203 {b,a,c} 203

204 {b,a,c,g} 204

205 {b,a,c,g,h} 205

206 {b,a,c,g,h,d} 206

207 {b,a,c,g,h,d,e} 207

208 {b,a,c,g,h,d,e,f} Listy puste - stop 208

209 Najkrótsze drogi w grafie Wagę drogi nazywamy czasem długością tej drogi. Jednak nie zawsze waga musi oznaczać długość. Często waga krawędzi w grafie oznacza czas potrzebny na pokonanie jakiegoś odcinka drogi, czas wykonania jakiejś czynności, koszt wykonania tej czynności. Stąd waga drogi oznaczać może łączny czas potrzebny na przebycie tej drogi, łączny czas wykonania jakiejś czynności lub też całkowity koszt. 209

210 Problem: Znaleźć najkrótszą drogę w grafie ważonym, czyli drogę o najmniejszej wadze łączącej dane dwa wierzchołki. 210

211 Algorytm Dijkstry Polega na ustaleniu wierzchołka początkowego, przeglądaniu pozostałych wierzchołków i wybraniu wierzchołka, dla którego waga drogi od wierzchołka początkowego jest najmniejsza. Jednocześnie uaktualniane są najmniejsze wagi dróg od wierzchołka początkowego do innych wierzchołków. 211

212 Przykład Wyznaczyć drogę o najmniejszej wadze (najkrótszą drogę) łączącą wierzchołki A oraz D poniższego grafu z wagami używając algorytmu Dijkstry. 212

213 d(a)=0 213

214 krok 1 d(b)=min{d(b) ; d(a)+5}= min{ ; 5}=5 d(f)=min{d(f) ; d(a)+3}= min{ ; 3}=3 214

215 krok 2 d(c)=min{d(c) ; d(f)+7}= min{ ; 3+7}=10 d(i)=min{d(i) ; d(f)+5}= min{ ; 3+5}=8 d(k)=min{d(k) ; d(f)+3}= min{ ; 3+3}=6. 215

216 krok 3 d(e)=min{d(e) ; d(b)+2}= min{ ; 5+2}=7. d(g)=min{d(g) ; d(b)+6}= min{ ; 5+6}=

217 krok 4 d(g)=min{d(g) ; d(k)+4}= min{11 ; 6+4}=10 d(j)=min{d(j) ; d(k)+5}= min{ ; 6+5}=11 d(l)=min{d(l) ; d(k)+2}= min{ ; 6+2}=8 217

218 krok 5 d(i)=min{d(i) ; d(e)+1}= min{8 ; 7+1}=8 d(j)=min{d(j) ; d(e)+2}= min{11 ; 7+2}=9 218

219 krok 6 219

220 krok 7 d(g)=min{d(g) ; d(l)+8}= min{10 ; 8+8}=10 220

221 krok 8 221

222 krok 9 d(d)=min{d(d) ; d(g)+1}= min{ ; 10+1}=11 d(h)=min{d(h) ; d(g)+2}= min{ ; 10+2}=12 222

223 krok 10 d(d)=min{d(d) ; d(c)+2}= min{11 ; 10+2}=11 d(h)=min{d(h) ; d(g)+2}= min{12 ; 10+5}=12 223

224 krok

225 krok

226 W trakcie działania przedstawionego algorytmu każdemu wierzchołkowi przypisana została liczba oznaczająca najmniejszą spośród wag dróg łączących wierzchołek A z tym wierzchołkiem. 226

227 227

228 Nas interesuje najkrótsza (o najmniejszej wadze) droga łącząca wierzchołki A oraz D. W tabeli odczytujemy d(d)=11. Najkrótsza droga ma zatem wagę 11 i wystarczy ją teraz odczytać z naszej tabeli. 228

229 Widzimy kolejno, że: wierzchołkiem wierzchołek G, poprzedzającym wierzchołek D jest wierzchołkiem, który poprzedza G jest wierzchołek K, wierzchołkiem poprzedzającym K jest wierzchołek F, wierzchołkiem poprzedzającym F jest wierzchołek A, czyli wierzchołek początkowy. Ostatecznie drogą o najmniejszej wadze łączącą wierzchołki A oraz D jest droga przebiegająca kolejno przez wierzchołki A, F, K, G, D 229

230 Najkrótsza droga łącząca wierzchołki A oraz D 230

231 Algorytm Dijkstry daje nam wagi najkrótszych dróg łączących dany wierzchołek ze wszystkimi pozostałymi. Wykonując ten algorytm n*(n-1)/2 razy otrzymalibyśmy macierz (tablicę) odległości pomiędzy każdą parą wierzchołków. 231

232 Minimalne drzewa spinające Jak zauważyliśmy wcześniej każdy graf spójny posiada drzewo spinające. Z twierdzenia Cayley a wiemy też, że graf pełny wymiaru n posiada nn-2 drzew spinających. Wobec tego dowolny graf prosty wymiaru n posiada co najwyżej nn-2 drzew spinających. 232

233 W zagadnieniach, które można przedstawić za pomocą grafu z wagami istotne jest często znalezienie minimalnego drzewa spinającego, czyli drzewa o minimalnej wadze. Najbardziej znanymi algorytmami służącymi do rozwiązania tego problemu są: - algorytm Kruskala, oraz - algorytm Prima 233

234 Oba algorytmy są algorytmami zachłannymi, to znaczy takimi algorytmami, które w każdym kolejnym kroku wykonują tę operację, która wydaje się w danym momencie najkorzystniejsza. Algorytmy te polegają na wybieraniu krawędzi o najmniejszej wadze tak, aby nie utworzyć cyklu. 234

235 Algorytmy znajdowania minimalnego drzewa spinającego nie są jednoznaczne, gdyż minimalne drzewo spinające nie musi być dokładnie jedno. 235

236 Inaczej jest w grafach, których krawędzie mają różne wagi. Dla takich grafów można udowodnić następujące twierdzenie. Twierdzenie. W grafie spójnym ważonym, którego krawędziom przypisano różne wagi istnieje dokładnie jedno minimalne drzewo spinające. 236

237 Algorytm Kruskala Algorytm ten składa się z dwóch etapów. W pierwszym dokonujemy sortowania krawędzi według niemalejących wag, a w drugim dopiero wyznaczamy minimalne drzewo spinające. Zachłanność tego algorytmu polega na tym, że w każdym kolejnym kroku dodajemy do budowanego grafu krawędź o najmniejszej możliwej wadze. 237

238 Budowane minimalne drzewo spinające jest najpierw lasem ponieważ na początku działania algorytmu tworzymy las złożony z samych tylko wierzchołków grafu wyjściowego. Czasami taki las dopiero w końcowej fazie działania algorytmu staje się drzewem. 238

239 Teraz z posortowanego zbioru wszystkich krawędzi wybieramy krawędź o najmniejszej wadze. Jeśli jest ich kilka, to wybieramy dowolną. Dołączamy tę krawędź do budowanego drzewa. Następnie, spośród pozostałych krawędzi grafu wybieramy krawędź o najmniejszej wadze i również ją dołączamy. 239

240 Przy wyborze trzeciej i następnych krawędzi poza najmniejszą wagą musimy zwracać uwagę na fakt, czy wybrana krawędź nie spowoduje utworzenia cyklu. Krawędź o najmniejszej wadze, której dołączenie do grafu nie spowoduje utworzenia w nim cyklu nazywać będziemy krawędzią bezpieczną. 240

241 Krawędzi bezpiecznych może być w danym momencie działania algorytmu wiele i zbiór tych krawędzi zmienia się w trakcie działania algorytmu. Powyższe postępowanie kontynuujemy do momentu, gdy w posortowanym zbiorze krawędzi nie będzie już krawędzi bezpiecznych. 241

242 Przykład Znaleść drzewo spinające grafu spójnego stosując algorytm Kruskala. 242

243 Na początku porządkujemy krawędzie grafu według niemalejących wag. AC AB CD CE AE DE CG EG EF FG DF BF

244 Oznaczmy budowane minimalne drzewo spinające przez T. Oczywiście na początku działania algorytmu T jest grafem pustym lasem złożonym z 12. drzew. 244

245 Działanie algorytmu rozpoczynamy od dołączenia do zbioru T krawędzi o najmniejszej wadze, czyli krawędzi AC. Krok 1. Zbiór T={AC} 245

246 Krok 2. Zbiór T={AC, CD} 246

247 Krok 3. Zbiór T={AC, CD, CE}. 247

248 Krok 4. Zbiór T={AC, CD, CE, AB}. 248

249 Krok 5. Zbiór T={AC, CD, CE, AB, CG}. 249

250 Krok 6. Zbiór T={AC, CD, CE, AB, CG, EF}. 250

251 Algorytm Prima W odróżnieniu od algorytmu Kruskala algorytm Prima nie wymaga sortowania krawędzi według wag. Konieczne jest tylko arbitralne wybranie wierzchołka startowego. 251

252 Zwykle wybieramy wierzchołek najbardziej wysunięty na lewo i dołączając kolejne krawędzie przechodzimy na prawo przez kolejne wierzchołki. Wierzchołek ten jest zaczynem budowanego minimalnego drzewa spinającego. 252

253 Działanie algorytmu polega na kolejnym dołączaniu do budowanego drzewa jednej z bezpiecznych krawędzi, to znaczy takich, które sąsiadują z wierzchołkami aktualnego drzewa i nie tworzą cyklu. W odróżnieniu od algorytmu Kruskala, w trakcie działania algorytmu Prima konstruowane drzewo nigdy nie jest lasem. 253

254 Spośród bezpiecznych krawędzi sąsiadujących z wierzchołkami dołączonymi już do drzewa, dołączamy do niego krawędź o najmniejszej wadze. Działanie algorytmu kończymy, gdy zbiór bezpiecznych krawędzi jest pusty. 254

255 Może to oznaczać, że: 1) otrzymane drzewo zawiera wszystkie wierzchołki grafu wyjściowego i jest minimalnym drzewem spinającym naszego grafu, lub 2) otrzymane drzewo nie zawiera wszystkich wierzchołków grafu wyjściowego, co oznacza, że graf nie jest spójny, a otrzymane drzewo jest minimalnym drzewem spinającym jednej ze składowych spójnych grafu wyjściowego. 255

256 Uwaga: Algorytm Prima można zmodyfikować tak, aby działał również dla grafów, które nie są spójne a jego działanie dawało w wyniku minimalny las spinający grafu. 256

257 Przykład Znajdziemy drzewo spinające grafu spójnego stosując algorytm Prima. 257

258 258

259 259

260 260

261 261

262 262

263 263

264 264

265 265

266 Problem kolorowania map pojawił się w roku 1852, gdy niejaki Francis Guthrie próbował pokolorować mapę przedstawiającą hrabstwa w Anglii. Zadał on sobie pytanie: Jaka jest najmniejsza liczba barw wystarczająca do pokolorowania mapy przedstawiającej wiele hrabstw tak, aby żadne dwa hrabstwa mające wspólną granicę nie były oznaczone tą samą barwą? 266

267 Hipoteza postawiona przez Guthrie wystarczą cztery kolory trafiła do de Morgana (tego od praw de Morgana, a następnie do Cayley a (1878). 267

268 Pierwszy pełny i poprawny dowód pojawił się dopiero w roku 1977 (Appel i Haken), czyli 125 lat od postawienia problemu i sformułowania hipotezy! 268

269 Przykład mapy, której nie da się pokolorować za pomocą trzech barw 269

270 Definicja Grafem silnie spójnym nazywamy digraf (graf skierowany), w którym dla każdej pary wierzchołków istnieje łącząca je droga. Wniosek Każdy graf spójny (nieskierowany) jest silnie spójny. 270

271 Przykład grafu silnie spójnego 271

272 Definicja Silnie spójną składową digrafu nazywamy największy silnie spójny podgraf tego digrafu. 272

273 Graf i jego silnie spójne składowe 273

274 Rozważmy teraz relację ℜ określoną w zbiorze wierzchołków digrafu w następujący sposób: wierzchołek X w relacji z wierzchołkiem Y, gdy istnieje droga łącząca X z Y oraz droga łącząca Y z X. 274

275 Tak określona relacja jest relacja równoważności, tzn. jest zwrotna, symetryczna i przechodnia. Można udowodnić, że klasy abstrakcji tak określonej relacji ℜ są zbiorami wierzchołków silnie spójnych składowych digrafu. 275

276 Definicja Zbiór tych krawędzi grafu, których usunięcie spowoduje zwiększenie liczby składowych spójnych nazywamy zbiorem rozspajającym grafu G. Przykładem zbioru rozspajającego grafu jest każdy most. 276

277 Definicja Rozcięciem grafu nazywamy każdy zbiór rozspajający, którego żaden podzbiór właściwy nie jest zbiorem rozspajającym. 277

278 Przykłady rozcięć {a}, {b,c}, {c,d,e}, {e,f,g}, {c,d,f,g} 278

279 Definicja Spójnością krawędziową grafu spójnego G nazywamy liczbę λ(g) równą liczności najmniej licznego rozcięcia grafu G. 279

280 Twierdzenie Spójność krawędziowa grafu spójnego G nie może przekroczyć stopnia wierzchołka o najmniejszym stopniu w grafie. 280

281 Definicja Graf G nazywamy k-spójnym krawędziowo, jeżeli λ(g) k 281

282 Graf 2-spójny krawędziowo Graf 1-spójny krawędziowo 282

283 Definicja Zbiorem rozdzielającym grafu spójnego G nazywamy zbiór wierzchołków tego grafu, których usunięcie wraz z krawędziami z nimi incydentnymi powoduje, że graf przestaje być spójny. Zbiór rozdzielający składający się z jednego tylko wierzchołka nazywamy wierzchołkiem rozcinającym. 283

284 Graf i jego zbiór rozdzielający (wierzchołki x i y). Kolorem szarym zaznaczone są krawędzie incydentne z wierzchołkami zbioru rozdzielającymi. 284

285 Graf i jego wierzchołek rozcinający (x). Kolorem szarym zaznaczone są krawędzie incydentne z wierzchołkami rozdzielającym. 285

286 Definicja Spójnością wierzchołkową grafu spójnego G, który nie jest pełny, nazywamy liczbę κ (G) równą liczności najmniej licznego rozcięcia grafu G. 286

287 Definicja Graf nazywamy k-spójnym wierzchołkowo, gdy κ(g) k Twierdzenie W dowolnym grafie spójnym κ(g) λ(g). 287

288 Twierdzenie Maksymalna spójność wierzchołkowa w grafie wymiaru n, posiadającym m krawędzi jest równa całkowitej części liczby 2m n 288

289 Dowód: Niech oznacza spójność krawędziową grafu G. Istnieje zatem zbiór rozspajający S posiadający krawędzi. Niech S dzieli wierzchołki grafu na podzbiory V1 oraz V2. Przez usunięcie co najwyżej wierzchołków z V1 (lub V2), do których krawędzie ze zbioru rozspajającego są incydentne usuniemy cały zbiór S. c.n.u. 289

290 Wniosek W dowolnym spójnym grafie wymiaru n, posiadającym m krawędzi prawdziwa jest nierówność λ(g) κ λ (G) (G) 2m n 290

291 Definicja Graf nazywamy k-spójnym, jeżeli jego spójność wierzchołkowa wynosi k. 291

292 Twierdzenie Graf spójny jest k-spójny wtedy i tylko wtedy, gdy każda para jego wierzchołków jest połączona przez k lub więcej wzajemnie nie przecinających się dróg, a co najmniej jedna para wierzchołków jest połączona przez dokładnie k takich dróg. 292

293 Definicja Dwie drogi w grafie nazywamy rozłącznymi krawędziowo, jeżeli nie mają wspólnych krawędzi, choć mogą się przecinać. 293

294 Twierdzenie Spójność krawędziowa grafu wynosi k wtedy i tylko wtedy, gdy każda para wierzchołków w tym grafie połączona jest przez k lub więcej dróg rozłącznych krawędziowo, a co najmniej jedna para wierzchołków jest połączona przez dokładnie k takich dróg. 294

295 Definicja Pokolorowaniem (właściwym) obszarów wyznaczonych przez graf nazywamy takie przyporządkowanie obszarom kolorów, aby żadne dwa sąsiednie obszary nie miały tej samej barwy. 295

296 Definicja Mapą nazywamy każdy 3-spójny graf planarny. Twierdzenie (o czterech barwach) Każdą mapę można pokolorować właściwie używając co najwyżej czterech kolorów. 296

297 Przykład 297

298 Twierdzenie Mapę można pokolorować dwoma kolorami wtedy i tylko wtedy, gdy istnieje w niej cykl Eulera. 298

299 Przykład 299

300 Kolorowanie grafu to także kolorowanie wierzchołków i krawędzi. Istnieje szeroka gama zastosowań zarówno kolorowania wierzchołków jak i krawędzi: teoria kodowania podział logiki w komputerach logistyce problem ułożenia planu lekcji w szkole 300

301 Definicja Graf prosty nazwiemy k-kolorowalnym, gdy istnieje funkcja przyporządkowująca każdemu wierzchołkowi jeden z k kolorów tak, aby każdym dwóm sąsiadującym wierzchołkom przyporządkowane były różne kolory. 301

302 Uwaga: Zajmując się kolorowaniem grafu rozpatrujemy tylko grafy spójne, gdyż w przypadku grafu, który nie jest spójny kolory użyte do pokolorowania jednej składowej spójnej nie mają wpływu na kolory, których użyjemy do pokolorowania innej składowej. Oczywiście, liczba kolorów potrzebna do pokolorowania całego grafu jest równa maksimum spośród liczb kolorów użytych do pokolorowania jego składowych spójnych. 302

303 Definicja Liczbą chromatyczną grafu nazywamy k, jeżeli graf jest k-kolorowalny i jednocześnie nie jest (k-1)-kolorowalny. Liczbę chromatyczna grafu G oznaczamy χ(g). 303

304 Przykład Liczba chromatyczna poniższego grafu wynosi

305 Przykład Liczba chromatyczna poniższego grafu wynosi

306 Twierdzenie Liczba chromatyczna grafu pełnego wymiaru n jest równa n, zaś grafu pustego jest równa

307 Twierdzenie Graf wymiaru składający się z jednego tylko cyklu ma liczbę chromatyczną 2, gdy n jest liczbą parzysta, 3, gdy n jest liczą nieparzystą. 307

308 Twierdzenie Liczba chromatyczna drzewa składającego się z co najmniej dwóch wierzchołków jest równa

309 Twierdzenie Liczba chromatyczna dowolnego grafu prostego o m krawędziach spełnia nierówność 1 χ (G) m

310 Przykład Kolorowanie wierzchołków grafu 310

311 Przykład (zastosowanie do układania planu zajęć 1) Mamy 3 przedmioty obowiązkowe a, b, c oraz 4 przedmioty do wyboru:d, e, f, g Chcemy ułożyć plan tak, aby w tym samym czasie nie odbywały się przedmioty, na które powinien chodzić student 311

312 Przykład (zastosowanie do układania planu zajęć 1) Rysujemy graf, w którym wierzchołki oznaczają przedmioty, a krawędzie łączą wierzchołki odpowiadające przedmiotom, które nie mogą się odbywać w tym samym czasie 312

313 Przykład (zastosowanie do układania planu zajęć 1) Liczba chromatyczna narysowanego grafu jest równa liczbie różnych terminów zajęć jest koniecznych, aby zajęcie się nie pokrywały. χ (G ) = 4 313

314 Przykład (zastosowanie do układania planu zajęć 2) Mamy 3 przedmioty obowiązkowe a, b, c oraz 4 przedmioty do wyboru:d, e, f, g, przy czym każdy student musi wybrać jeden z przedmiotów d lub e oraz jeden z przedmiotów f lub g. Chcemy ułożyć plan tak, aby w tym samym czasie nie odbywały się przedmioty, na które powinien chodzić student 314

315 Przykład (zastosowanie do układania planu zajęć 2) Rysujemy graf, w którym wierzchołki oznaczają przedmioty, a krawędzie łączą wierzchołki odpowiadające przedmiotom, które nie mogą się odbywać w tym samym czasie 315

316 Przykład (zastosowanie do układania planu zajęć 2) Liczba chromatyczna narysowanego grafu jest równa liczbie różnych terminów zajęć jest koniecznych, aby zajęcie się nie pokrywały. χ (G ) = 5 316

317 Przykład (rozsadzenie gości na przyjęciu 1) Na przyjęcie przyjdzie ośmioro gości: Anna, Ewa, Maria, Zofia, Jan, Marcin, Tomek i Stefan. Wiemy, że : Ewa nie lubi się ze Stefanem, Zofia z Marią i Tomkiem, Maria z Janem, Jan z Marcinem, a Marcin ze Stefanem. Ile trzeba przygotować stolików, aby nielubiące się osoby nie siedziały przy tym samym stoliku? 317

318 Przykład (rozsadzenie gości na przyjęciu 1) Rysujemy graf, w którym wierzchołki oznaczają gości, a krawędzie łączą wierzchołki odpowiadające osobom, które się nie lubią. 318

319 Przykład (rozsadzenie gości na przyjęciu 1) Liczba chromatyczna narysowanego grafu jest równa liczbie potrzebnych stolików. χ (G ) = 2 319

320 Przykład (rozsadzenie gości na przyjęciu 1) 320

321 Przykład (rozsadzenie gości na przyjęciu 2) Na przyjęcie przyjdzie ośmioro gości: Anna, Ewa, Maria, Zofia, Jan, Marcin, Tomek i Stefan. Wiemy, że : Ewa nie lubi się ze Stefanem i z Marcinem, Zofia z Marią i Tomkiem, Maria z Janem, Jan z Marcinem, a Marcin ze Stefanem. Ile trzeba przygotować stolików, aby nielubiące się osoby nie siedziały przy tym samym stoliku? 321

322 Przykład (rozsadzenie gości na przyjęciu 2) Rysujemy graf, w którym wierzchołki oznaczają gości, a krawędzie łączą wierzchołki odpowiadające osobom, które się nie lubią. 322

323 Przykład (rozsadzenie gości na przyjęciu 2) Liczba chromatyczna narysowanego grafu jest równa liczbie potrzebnych stolików. χ (G ) = 3 323

324 Przykład (rozsadzenie gości na przyjęciu 2) 324

325 Definicja Graf nazywamy k-kolorowalnym krawędziowo, jeśli można pokolorować jego krawędzie k kolorami tak, aby żadne dwie sąsiednie krawędzie nie miały tego samego koloru. 325

326 Definicja Indeksem chromatycznym grafu nazywamy liczbę k, jeżeli graf jest k-kolorowalny krawędziowo i jednocześnie nie jest (k-1)-kolorowalny krawędziowo. Indeks chromatyczny grafu G oznaczamy χ (G). 326

327 Przykład Indeks chromatyczny grafu z rysunku jest równy

328 Twierdzenie Vizinga (1964). Indeks chromatyczny χ (G) grafu G, w którym najwyższy stopień wierzchołka wynosi p, spełnia nierówność p χ (G) p

329 Drogą Hamiltona nazywamy drogę, który przechodzi przez każdy wierzchołek grafu dokładnie jeden raz Cyklem Hamiltona nazywamy cykl, który przechodzi przez każdy wierzchołek grafu dokładnie jeden raz 329

330 Grafem półhamiltonowskim nazywamy graf, w którym istnieje droga przechodząca przez każdy wierzchołek grafu. Grafem hamiltonowskim nazywamy graf, w którym istnieje cykl Hamiltona. 330

331 Twierdzenie (Ore, 1960) Jeżeli graf prosty ma n wierzchołków, n 3 oraz deg( X i ) + deg( X j ) n dla każdej pary wierzchołków niesąsiednich, to jest hamiltonowski. 331

332 Twierdzenie (Dirac, 19552) Jeżeli graf prosty ma n, wierzchołków oraz n 3 n deg( X i ) 2 dla każdego wierzchołka, to jest hamiltonowski. 332

333 Twierdzenie Jeżeli graf prosty ma n wierzchołków, oraz co najmniej n 3 1 (n 1)(n 2) krawędzi, to jest hamiltonowski. 333

334 Kod Graya Kodem Graya długości n nazywamy ciąg wszystkich różnych ciągów n-wyrazowych, których wyrazami są liczby 0 lub 1 i które różnią się od siebie dokładnie jedną cyfrą. Ciągów takich jest 2 n 334

335 Jeśli każdemu z ciągów Graya długości n, przypiszemy wierzchołki pewnego grafu n wymiaru 2 i połączymy krawędzią te ciągi, które różnią się od siebie dokładnie jedna cyfrą, to otrzymamy cykl Hamiltona. 335

336 Twierdzenie Jeżeli w grafie prostym najwyższy stopień wierzchołka wynosi n, to graf ten jest n+1 kolorowalny wierzchołkowo. 336

337 Grafem dwudzielnym nazywamy graf (G,X), w którym zbiór wierzchołków X można podzielić na dwa rozłączne i niepuste podzbiory X1 oraz X2 tak, że każda krawędź w grafie łączy wierzchołek z jednego podzbioru z wierzchołkiem drugiego podzbioru. 337

338 Grafy dwudzielne 338

339 Grafy dwudzielne 339

340 Przykład Grafe dwudzielnym jest graf kodu Graya (dzielimy zbiór wierzchołków na dwa podzbiory, w których wierzchołki mają parzystą bądź nieparzystą liczbę jedynek. 340

341 Graf dwudzielny nazywamy pełnym grafem dwudzielnym, jeśli każdy wierzchołek zbioru X1 jest połączony dokładnie jedną krawędzią z każdym wierzchołkiem zbioru X2. 341

342 Grafy pełne dwudzielne 342

343 Dla dowolnych liczb naturalnych m i n wszystkie pełne grafy dwudzielne takie, że X1 =m oraz X2 =n są izomorficzne. Grafy takie oznaczamy Km,n Łatwo zauważyć, że grafy Km,n oraz Kn,m są izomorficzne. 343

344 Twierdzenie Jeżeli graf dwudzielny jest hamiltonowski, to liczba wierzchołków jednego podzbioru jest równa liczbie wierzchołków drugiego podzbioru. Jeżeli graf jest półhamiltonowski, to liczby te różnią się co najwyżej o jeden. 344

345 Uwaga: Dla pełnych grafów dwudzielnych wymiaru co najmniej 3, prawdziwe jest również twierdzenie odwrotne. 345

346 Def. Listą nazywamy uporządkowany ciąg elementów Przykładem listy jest tablica jednowymiarowa 346

347 Często wygodniej jest posługiwać się listą bez konieczności odwoływania się do indeksów. Przykładami takich list są kolejki i stosy. 347

348 Def. Kolejką nazywamy listę z trzema operacjami na jej elementach: 2. dodawania nowego elementu, 3. zdejmowania pierwszego elementu, 4. sprawdzania, czy kolejka jest pusta (FIFO first in first out) 348

349 Def. Stosem nazywamy listę z trzema operacjami na jej elementach: 2. dodawania nowego elementu na wierzch stosu, 3. zdejmowania elementu z wierzchu stosu, 4. sprawdzania, czy stos jest pusty (LIFO last in first out) 349

350 Implementacja kolejki Tworzymy tablicę KOLEJKA[0..max] oraz dwie zmienne PoczątekKolejki i KoniecKolejki. Zmienna PoczątekKolejki wskazuje pierwszy element kolejki, zaś zmienna KoniecKolejki wskazuje pierwsze wolne miejsce poza kolejką. 350

351 Kolejka jest pusta, jeżeli KoniecKolejki=PoczątekKolejki Operacje włożenia nowego elementu x do kolejki implementujemy za pomocą instrukcji: KOLEJKA[KoniecKolejki]:=x KoniecKolejki:=KoniecKolejki+1 351

352 Operacje zdjęcia elementu z KOLEJKI implementujemy za pomocą instrukcji: x:=kolejka[początekkolejki]; PoczątekKolejki:=PoczątekKolejki+1 Operacja zdejmowania elementu z kolejki może być wykonana tylko wtedy gdy KoniecKolejki PoczątekKolejki 352

353 Implementacja stosu Tworzymy tablicę STOS[0..max] oraz zmienną WierzchStosu Zmienna WierzchStosu wskazuje na pierwsze wolne miejsce w tablicy STOS 353

354 Operacje włożenia nowego elementu x na STOS implementujemy za pomocą instrukcji: STOS[WierzchStosu]:=x WierzchStosu:= WierzchStosu+1 Jeżeli wartość zmiennej WierzchStosu=max+1 to stos jest pełny i nie można na niego wkładać nowych elementów 354

355 Operacje zdjęcia elementu z wierzchu STOSU implementujemy za pomocą instrukcji: WierzchStosu:= WierzchStosu-1 x:=stos[wierzchstosu] Operację tę można wykonać, jeżeli stos nie jest pusty, czyli, gdy zmienna WierzchStosu>0 355

356 Algorytm znajdowania drogi Hamiltona Poniższy algorytm jest algorytmem z nawrotami z zastosowaniem stosu jako struktury danych. 356

357 Dane wejściowe: 2. Graf (X,G), w którym X oznacza zbiór wierzchołków, a G zbiór krawędzi, 3. Wierzchołek początkowy x X Dane wyjściowe: Droga Hamiltona zaczynająca się od wierzchołka x lub informacja o jej braku 357

358 Włóż x na stos Dopóki stos nie jest pusty, powtarzaj: * niech y będzie wierzchołkiem na wierzchu stosu * szukamy wierzchołka w o najniższym numerze, takiego, że - w jest połączone z y, - w nie wystepuje na stosie, - jeżeli w poprzedniej iteracji zdjęto ze stosu wierzchołek z, to numer w powinien być większy od numeru z 358

359 Jeżeli takie w znajdziemy, to wkładamy w na stos, jeżeli wierzchołki na stosie tworzą już drogę Hamiltona, to koniec algorytmu znaleziono drogę Hamiltona Jeżeli takiego w nie znajdziemy, to zdejmujemy y ze stosu Jeżeli stos jest pusty i nie znaleziono drogi Hamiltona, to w grafie nie ma drogi Hamiltona. 359

360 Przykład Sprawdzić, czy w podanym grafie istnieje droga Hamiltona rozpoczynająca się w wierzchołku a 360

361 361

362 362

363 363

364 364

365 365

366 366

367 367

368 368

369 369

370 370

371 371

372 372

373 373

374 Stos pusty nie znaleziono drogi Hamiltona 374

375 Przykład Sprawdzić, czy w podanym grafie istnieje droga Hamiltona rozpoczynająca się w wierzchołku a 375

376 376

377 377

378 378

379 Przykład Sprawdzić, czy w podanym grafie istnieje droga Hamiltona rozpoczynająca się w wierzchołku a 379

380 380

381 381

382 382

383 383

384 384

385 385

386 386

387 387

388 388

389 389

390 390

391 391

392 392

393 393

394 394

395 395

396 Stos pełny znaleziono drogę Hamiltona 396

397 Notacja asymptotyczna Do szacowania złożoności czasowej algorytmów, czyli szacowania czasu pracy algorytmów używa się notacji asymptotycznej Pozwala nam to podzielić problemy na: łatwo rozwiązywalne trudno rozwiązywalne 397

398 Notacja asymptotyczna Niech f i g będą dwiema funkcjami określonymi na zbiorze liczb naturalnych o wartościach w zbiorze liczb rzeczywistych dodatnich f, g : N { x R : x > 0} 398

399 Notacja asymptotyczna Mówimy, że funkcja g jest o duże od f, gdy istnieje dodatnia taka stała c oraz taka liczba naturalna N0, że dla dowolnego n> N0 zachodzi nierówność g ( n) c f ( n) Zapisujemy ten fakt g (n) = O ( f (n)) 399

400 Notacja asymptotyczna Przykład 2 n 4 + 5n 3 = O ( n 4 ) gdyż dla dowolnego n 2n + 5n 3 2n + 5n = 7 n

401 Notacja asymptotyczna Mówimy, że funkcja g jest o małe od f, gdy g ( n) lim = 0 n + f ( n) Zapisujemy ten fakt g (n) = o( f (n)) 401

402 Notacja asymptotyczna Przykład 2n 4 + 5n 3 = o(n 5 ) gdyż 2n 4 + 5n 3 lim = 0 5 n + n 402

403 Notacja asymptotyczna Mówimy, że funkcja g jest omega duże od f, gdy istnieje dodatnia taka stała c oraz taka liczba naturalna N0, że dla dowolnego n> N0 zachodzi nierówność g ( n) c f ( n) Zapisujemy ten fakt g (n) = Ω ( f (n)) 403

404 Notacja asymptotyczna... 3 n log 2 n < m n n n 2 n 3... n dla dostatecznie dużych n 2 n < n!< n n dla n 4 404

405 Notacja asymptotyczna Twierdzenie Każda z poniższych funkcji jest O od wszystkich funkcji na prawo od niej: 1, log 2 n,..., n, n, n, n log 2 n, n n, n, n...2, n!, n n 405 n

Algorytmiczna teoria grafów

Algorytmiczna teoria grafów Przedmiot fakultatywny 20h wykładu + 20h ćwiczeń 21 lutego 2014 Zasady zaliczenia 1 ćwiczenia (ocena): kolokwium, zadania programistyczne (implementacje algorytmów), praca na ćwiczeniach. 2 Wykład (egzamin)

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Twierdzenie 2.1 Niech G będzie grafem prostym

Bardziej szczegółowo

Suma dwóch grafów. Zespolenie dwóch grafów

Suma dwóch grafów. Zespolenie dwóch grafów Suma dwóch grafów G 1 = ((G 1 ), E(G 1 )) G 2 = ((G 2 ), E(G 2 )) (G 1 ) i (G 2 ) rozłączne Suma G 1 G 2 graf ze zbiorem wierzchołków (G 1 ) (G 2 ) i rodziną krawędzi E(G 1 ) E(G 2 ) G 1 G 2 G 1 G 2 Zespolenie

Bardziej szczegółowo

Matematyka dyskretna

Matematyka dyskretna Matematyka dyskretna Wykład 13: Teoria Grafów Gniewomir Sarbicki Literatura R.J. Wilson Wprowadzenie do teorii grafów Definicja: Grafem (skończonym, nieskierowanym) G nazywamy parę zbiorów (V (G), E(G)),

Bardziej szczegółowo

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA DROGI i CYKLE w grafach Dla grafu (nieskierowanego) G = ( V, E ) drogą z wierzchołka v 0 V do v t V nazywamy ciąg (naprzemienny) wierzchołków i krawędzi grafu: ( v 0, e, v, e,..., v t, e t, v t ), spełniający

Bardziej szczegółowo

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów Wykład 2. Reprezentacja komputerowa grafów 1 / 69 Macierz incydencji Niech graf G będzie grafem nieskierowanym bez pętli o n wierzchołkach (x 1, x 2,..., x n) i m krawędziach (e 1, e 2,..., e m). 2 / 69

Bardziej szczegółowo

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA DRZEWA i LASY Drzewem nazywamy graf spójny nie zawierający cykli elementarnych. Lasem nazywamy graf nie zawierający cykli elementarnych. Przykłady drzew i lasów takie krawędzie są wykluczone drzewo las

Bardziej szczegółowo

Drzewa. 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

Drzewa. 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 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

Bardziej szczegółowo

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych.

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych. Grafy Graf Graf (ang. graph) to zbiór wierzchołków (ang. vertices), które mogą być połączone krawędziami (ang. edges) w taki sposób, że każda krawędź kończy się i zaczyna w którymś z wierzchołków. Graf

Bardziej szczegółowo

Kolorowanie wierzchołków Kolorowanie krawędzi Kolorowanie regionów i map. Wykład 8. Kolorowanie

Kolorowanie wierzchołków Kolorowanie krawędzi Kolorowanie regionów i map. Wykład 8. Kolorowanie Wykład 8. Kolorowanie 1 / 62 Kolorowanie wierzchołków - definicja Zbiory niezależne Niech G będzie grafem bez pętli. Definicja Mówimy, że G jest grafem k kolorowalnym, jeśli każdemu wierzchołkowi możemy

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, B/14

Matematyka dyskretna. Andrzej Łachwa, UJ, B/14 Matematyka dyskretna Andrzej Łachwa, UJ, 2019 andrzej.lachwa@uj.edu.pl 1B/14 Drogi w grafach Marszruta (trasa) w grafie G z wierzchołka w do wierzchołka u to skończony ciąg krawędzi w postaci. W skrócie

Bardziej szczegółowo

a) 7 b) 19 c) 21 d) 34

a) 7 b) 19 c) 21 d) 34 Zadanie 1. Pytania testowe dotyczące podstawowych własności grafów. Zadanie 2. Przy każdym z zadań może się pojawić polecenie krótkiej charakterystyki algorytmu. Zadanie 3. W zadanym grafie sprawdzenie

Bardziej szczegółowo

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott Struktury danych i złożoność obliczeniowa Wykład. Prof. dr hab. inż. Jan Magott Algorytmy grafowe: podstawowe pojęcia, reprezentacja grafów, metody przeszukiwania, minimalne drzewa rozpinające, problemy

Bardziej szczegółowo

Opracowanie prof. J. Domsta 1

Opracowanie prof. J. Domsta 1 Opracowanie prof. J. Domsta 1 Algorytm FLEURY'ego: Twierdzenie 6.5 G-graf eulerowski. Wtedy cykl Eulera otrzymujemy nastepująco: a) Start w dowolnym wierzchołku b) Krawędzie w dowolnej kolejności po przebyciu

Bardziej szczegółowo

Graf. Definicja marca / 1

Graf. Definicja marca / 1 Graf 25 marca 2018 Graf Definicja 1 Graf ogólny to para G = (V, E), gdzie V jest zbiorem wierzchołków (węzłów, punktów grafu), E jest rodziną krawędzi, które mogą być wielokrotne, dokładniej jednoelementowych

Bardziej szczegółowo

MATEMATYKA DYSKRETNA - MATERIAŁY DO WYKŁADU GRAFY

MATEMATYKA DYSKRETNA - MATERIAŁY DO WYKŁADU GRAFY ERIAŁY DO WYKŁADU GRAFY Graf nieskierowany Grafem nieskierowanym nazywamy parę G = (V, E), gdzie V jest pewnym zbiorem skończonym (zwanym zbiorem wierzchołków grafu G), natomiast E jest zbiorem nieuporządkowanych

Bardziej szczegółowo

Kolorowanie wierzchołków

Kolorowanie wierzchołków Kolorowanie wierzchołków Mając dany graf, pokolorować jego wierzchołki w taki sposób, aby każde dwa wierzchołki sąsiednie miały inny kolor. Każda krawędź łączy wierzchołki różnych kolorów. Takie pokolorowanie

Bardziej szczegółowo

Teoria grafów podstawy. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Teoria grafów podstawy. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak Teoria grafów podstawy Materiały pomocnicze do wykładu wykładowca: dr Magdalena Kacprzak Grafy zorientowane i niezorientowane Przykład 1 Dwa pociągi i jeden most problem wzajemnego wykluczania się Dwa

Bardziej szczegółowo

G. Wybrane elementy teorii grafów

G. Wybrane elementy teorii grafów Dorota Miszczyńska, Marek Miszczyński KBO UŁ Wybrane elementy teorii grafów 1 G. Wybrane elementy teorii grafów Grafy są stosowane współcześnie w różnych działach nauki i techniki. Za pomocą grafów znakomicie

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Informacje podstawowe 1. Konsultacje: pokój

Bardziej szczegółowo

Czy istnieje zamknięta droga spaceru przechodząca przez wszystkie mosty w Królewcu dokładnie jeden raz?

Czy istnieje zamknięta droga spaceru przechodząca przez wszystkie mosty w Królewcu dokładnie jeden raz? DROGI i CYKLE EULERA w grafach Czy istnieje zamknięta droga spaceru przechodząca przez wszystkie mosty w Królewcu dokładnie jeden raz? Czy można narysować podaną figurę nie odrywając ołówka od papieru

Bardziej szczegółowo

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA Zad. 1 (12p.)Niech n 3k > 0. Zbadać jaka jest najmniejsza możliwa liczba krawędzi w grafie, który ma dokładnie n wierzchołków oraz dokładnie k składowych, z których

Bardziej szczegółowo

KURS MATEMATYKA DYSKRETNA

KURS MATEMATYKA DYSKRETNA KURS MATEMATYKA DYSKRETNA LEKCJA 28 Grafy hamiltonowskie ZADANIE DOMOWE www.akademia.etrapez.pl Strona 1 Część 1: TEST Zaznacz poprawną odpowiedź (tylko jedna jest prawdziwa). Pytanie 1 Drogę nazywamy

Bardziej szczegółowo

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1 Wykład Algorytmy grafowe metoda zachłanna. Właściwości algorytmu zachłannego:. W przeciwieństwie do metody programowania dynamicznego nie występuje etap dzielenia na mniejsze realizacje z wykorzystaniem

Bardziej szczegółowo

Teoria grafów II. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Teoria grafów II. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak Teoria grafów II Materiały pomocnicze do wykładu wykładowca: dr Magdalena Kacprzak Graf planarny Graf planarny Graf, który może być narysowany tak, by uniknąć przecinania się krawędzi, nazywamy grafem

Bardziej szczegółowo

Podstawowe własności grafów. Wykład 3. Własności grafów

Podstawowe własności grafów. Wykład 3. Własności grafów Wykład 3. Własności grafów 1 / 87 Suma grafów Niech będą dane grafy proste G 1 = (V 1, E 1) oraz G 2 = (V 2, E 2). 2 / 87 Suma grafów Niech będą dane grafy proste G 1 = (V 1, E 1) oraz G 2 = (V 2, E 2).

Bardziej szczegółowo

Wykłady z Matematyki Dyskretnej

Wykłady z Matematyki Dyskretnej Wykłady z Matematyki Dyskretnej dla kierunku Informatyka dr Instytut Informatyki Politechnika Krakowska Wykłady na bazie materiałów: dra hab. Andrzeja Karafiata dr hab. Joanny Kołodziej, prof. PK Kolorowanie

Bardziej szczegółowo

MATEMATYKA DYSKRETNA - KOLOKWIUM 2

MATEMATYKA DYSKRETNA - KOLOKWIUM 2 1 MATEMATYKA DYSKRETNA - KOLOKWIUM 2 GRUPA A RACHUNKI+KRÓTKIE WYJAŚNIENIA! NA TEJ KARTCE! KAŻDA DODATKOWA KARTKA TO MINUS 1 PUNKT! Imię i nazwisko...... Nr indeksu... 1. (3p.) Znajdź drzewo o kodzie Prufera

Bardziej szczegółowo

Algorytmy grafowe. Wykład 1 Podstawy teorii grafów Reprezentacje grafów. Tomasz Tyksiński CDV

Algorytmy grafowe. Wykład 1 Podstawy teorii grafów Reprezentacje grafów. Tomasz Tyksiński CDV Algorytmy grafowe Wykład 1 Podstawy teorii grafów Reprezentacje grafów Tomasz Tyksiński CDV Rozkład materiału 1. Podstawowe pojęcia teorii grafów, reprezentacje komputerowe grafów 2. Przeszukiwanie grafów

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, /14

Matematyka dyskretna. Andrzej Łachwa, UJ, /14 Matematyka dyskretna Andrzej Łachwa, UJ, 2012 andrzej.lachwa@uj.edu.pl 13/14 Grafy podstawowe definicje Graf to para G=(V, E), gdzie V to niepusty i skończony zbiór, którego elementy nazywamy wierzchołkami

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 03/0 Przeszukiwanie w głąb i wszerz I Przeszukiwanie metodą

Bardziej szczegółowo

SPÓJNOŚĆ. ,...v k. }, E={v 1. v k. i v k. ,...,v k-1. }. Wierzchołki v 1. v 2. to końce ścieżki.

SPÓJNOŚĆ. ,...v k. }, E={v 1. v k. i v k. ,...,v k-1. }. Wierzchołki v 1. v 2. to końce ścieżki. SPÓJNOŚĆ Graf jest spójny, gdy dla każdego podziału V na dwa rozłączne podzbiory A i B istnieje krawędź z A do B. Definicja równoważna: Graf jest spójny, gdy każde dwa wierzchołki są połączone ścieżką

Bardziej szczegółowo

E ' E G nazywamy krawędziowym zbiorem

E ' E G nazywamy krawędziowym zbiorem Niech G będzie grafem spójnym. Wierzchołek x nazywamy rozcinającym, jeśli G\{x} jest niespójny. Niech G będzie grafem spójnym. V ' V G nazywamy zbiorem rozcinającym jeśli G\V' jest niespójny Niech G będzie

Bardziej szczegółowo

Grafy dla każdego. dr Krzysztof Bryś. Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska.

Grafy dla każdego. dr Krzysztof Bryś. Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska. Grafy dla każdego dr Krzysztof Bryś brys@mini.pw.edu.pl Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska www.mini.pw.edu.pl Warszawa, 28 marca 2015 Graf składa się z elementów pewnego zbioru

Bardziej szczegółowo

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II Wykład 6. Drzewa cz. II 1 / 65 drzewa spinające Drzewa spinające Zliczanie drzew spinających Drzewo T nazywamy drzewem rozpinającym (spinającym) (lub dendrytem) spójnego grafu G, jeżeli jest podgrafem

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, /14

Matematyka dyskretna. Andrzej Łachwa, UJ, /14 Matematyka dyskretna Andrzej Łachwa, UJ, 2016 andrzej.lachwa@uj.edu.pl 13/14 Grafy podstawowe definicje Graf to para G=(V, E), gdzie V to niepusty i skończony zbiór, którego elementy nazywamy wierzchołkami

Bardziej szczegółowo

6. Wstępne pojęcia teorii grafów

6. Wstępne pojęcia teorii grafów 6. Wstępne pojęcia teorii grafów Grzegorz Kosiorowski Uniwersytet Ekonomiczny w Krakowie zima 2016/2017 rzegorz Kosiorowski (Uniwersytet Ekonomiczny w Krakowie) 6. Wstępne pojęcia teorii grafów zima 2016/2017

Bardziej szczegółowo

SKOJARZENIA i ZBIORY WEWN. STABILNE WIERZCH. Skojarzeniem w grafie G nazywamy dowolny podzbiór krawędzi parami niezależnych.

SKOJARZENIA i ZBIORY WEWN. STABILNE WIERZCH. Skojarzeniem w grafie G nazywamy dowolny podzbiór krawędzi parami niezależnych. SKOJARZENIA i ZBIORY WEWN. STABILNE WIERZCH. Rozważamy graf G = (V, E) Dwie krawędzie e, e E nazywamy niezależnymi, jeśli nie są incydentne ze wspólnym wierzchołkiem. Skojarzeniem w grafie G nazywamy dowolny

Bardziej szczegółowo

TEORIA GRAFÓW I SIECI

TEORIA GRAFÓW I SIECI TEORIA GRAFÓW I SIECI Temat nr 1: Definicja grafu. Rodzaje i części grafów dr hab. inż. Zbigniew TARAPATA, prof. WAT e-mail: zbigniew.tarapata@wat.edu.pl http://tarapata.edu.pl tel.: 261-83-95-04, p.225/100

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Matematyka dyskretna. Andrzej Łachwa, UJ, /15 Matematyka dyskretna Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl 14/15 Grafy podstawowe definicje Graf to para G=(V, E), gdzie V to niepusty i skończony zbiór, którego elementy nazywamy wierzchołkami

Bardziej szczegółowo

Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, Grafy dzielimy na grafy skierowane i nieskierowane:

Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, Grafy dzielimy na grafy skierowane i nieskierowane: Wykład 4 grafy Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, E zbiór krawędzi, Grafy dzielimy na grafy skierowane i nieskierowane: Formalnie, w grafach skierowanych E jest podzbiorem

Bardziej szczegółowo

Algorytmiczna teoria grafów

Algorytmiczna teoria grafów Podstawowe pojęcia i klasy grafów Wykład 1 Grafy nieskierowane Definicja Graf nieskierowany (graf) G = (V,E) jest to uporządkowana para składająca się z niepustego skończonego zbioru wierzchołków V oraz

Bardziej szczegółowo

Marek Miszczyński KBO UŁ. Wybrane elementy teorii grafów 1

Marek Miszczyński KBO UŁ. Wybrane elementy teorii grafów 1 Marek Miszczyński KBO UŁ. Wybrane elementy teorii grafów 1 G. Wybrane elementy teorii grafów W matematyce teorię grafów klasyfikuje się jako gałąź topologii. Jest ona jednak ściśle związana z algebrą i

Bardziej szczegółowo

TEORIA GRAFÓW I SIECI

TEORIA GRAFÓW I SIECI TEORIA GRAFÓW I SIECI Temat nr : Grafy Berge a dr hab. inż. Zbigniew TARAPATA, prof. WAT e-mail: zbigniew.tarapata@wat.edu.pl http://tarapata.edu.pl tel.: 6-83-95-0, p.5/00 Zakład Badań Operacyjnych i

Bardziej szczegółowo

Grafy. Graf ( graf ogólny) to para G( V, E), gdzie:

Grafy. Graf ( graf ogólny) to para G( V, E), gdzie: Graf ( graf ogólny) to para G( V, E), gdzie: V jest zbiorem wierzchołków, ( czasami zwanymi węzłami lub punktami grafu) E jest rodziną ( być może powtarzających się) krawędzi, czyli jedno- i dwu- elementowych

Bardziej szczegółowo

Złożoność obliczeniowa klasycznych problemów grafowych

Złożoność obliczeniowa klasycznych problemów grafowych Złożoność obliczeniowa klasycznych problemów grafowych Oznaczenia: G graf, V liczba wierzchołków, E liczba krawędzi 1. Spójność grafu Graf jest spójny jeżeli istnieje ścieżka łącząca każdą parę jego wierzchołków.

Bardziej szczegółowo

Wprowadzenie Podstawy Fundamentalne twierdzenie Kolorowanie. Grafy planarne. Przemysław Gordinowicz. Instytut Matematyki, Politechnika Łódzka

Wprowadzenie Podstawy Fundamentalne twierdzenie Kolorowanie. Grafy planarne. Przemysław Gordinowicz. Instytut Matematyki, Politechnika Łódzka Grafy planarne Przemysław Gordinowicz Instytut Matematyki, Politechnika Łódzka Grafy i ich zastosowania Wykład 12 Plan prezentacji 1 Wprowadzenie 2 Podstawy 3 Fundamentalne twierdzenie 4 Kolorowanie grafów

Bardziej szczegółowo

0. ELEMENTY LOGIKI. ALGEBRA BOOLE A

0. ELEMENTY LOGIKI. ALGEBRA BOOLE A WYKŁAD 5() ELEMENTY LOGIKI ALGEBRA BOOLE A Logika podstawowe pojęcia: zdania i funktory, reguły wnioskowania, zmienne zdaniowe, rachunek zdań Matematyka zbudowana jest z pierwotnych twierdzeń (nazywamy

Bardziej szczegółowo

Wykłady z Matematyki Dyskretnej

Wykłady z Matematyki Dyskretnej Wykłady z Matematyki Dyskretnej dla kierunku Informatyka dr Instytut Informatyki Politechnika Krakowska Wykłady na bazie materiałów: dra hab. Andrzeja Karafiata dr hab. Joanny Kołodziej, prof. PK Grafy

Bardziej szczegółowo

Sortowanie topologiczne skierowanych grafów acyklicznych

Sortowanie topologiczne skierowanych grafów acyklicznych Sortowanie topologiczne skierowanych grafów acyklicznych Metody boolowskie w informatyce Robert Sulkowski http://robert.brainusers.net 23 stycznia 2010 1 Definicja 1 (Cykl skierowany). Niech C = (V, A)

Bardziej szczegółowo

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott Struktury danych i złożoność obliczeniowa Wykład 7 Prof. dr hab. inż. Jan Magott Problemy NP-zupełne Transformacją wielomianową problemu π 2 do problemu π 1 (π 2 π 1 ) jest funkcja f: D π2 D π1 spełniająca

Bardziej szczegółowo

TEORIA GRAFÓW I SIECI

TEORIA GRAFÓW I SIECI TEORIA GRAFÓW I SIECI Temat nr 3: Marszruty, łańcuchy, drogi w grafach dr hab. inż. Zbigniew TARAPATA, prof. WAT e-mail: zbigniew.tarapata@wat.edu.pl http://tarapata.edu.pl tel.: 261-83-95-04, p.225/100

Bardziej szczegółowo

Grafy (3): drzewa. Wykłady z matematyki dyskretnej dla informatyków i teleinformatyków. UTP Bydgoszcz

Grafy (3): drzewa. Wykłady z matematyki dyskretnej dla informatyków i teleinformatyków. UTP Bydgoszcz Grafy (3): drzewa Wykłady z matematyki dyskretnej dla informatyków i teleinformatyków UTP Bydgoszcz 13 (Wykłady z matematyki dyskretnej) Grafy (3): drzewa 13 1 / 107 Drzewo Definicja. Drzewo to graf acykliczny

Bardziej szczegółowo

Macierze. Rozdział Działania na macierzach

Macierze. Rozdział Działania na macierzach Rozdział 5 Macierze Funkcję, która każdej parze liczb naturalnych (i, j) (i 1,..., n; j 1,..., m) przyporządkowuje dokładnie jedną liczbę a ij F, gdzie F R lub F C, nazywamy macierzą (rzeczywistą, gdy

Bardziej szczegółowo

6d. Grafy dwudzielne i kolorowania

6d. Grafy dwudzielne i kolorowania 6d. Grafy dwudzielne i kolorowania Grzegorz Kosiorowski Uniwersytet Ekonomiczny w Krakowie zima 2016/2017 rzegorz Kosiorowski (Uniwersytet Ekonomiczny w6d. Krakowie) Grafy dwudzielne i kolorowania zima

Bardziej szczegółowo

5. Rozwiązywanie układów równań liniowych

5. Rozwiązywanie układów równań liniowych 5. Rozwiązywanie układów równań liniowych Wprowadzenie (5.1) Układ n równań z n niewiadomymi: a 11 +a 12 x 2 +...+a 1n x n =a 10, a 21 +a 22 x 2 +...+a 2n x n =a 20,..., a n1 +a n2 x 2 +...+a nn x n =a

Bardziej szczegółowo

Wykład 8. Drzewo rozpinające (minimum spanning tree)

Wykład 8. Drzewo rozpinające (minimum spanning tree) Wykład 8 Drzewo rozpinające (minimum spanning tree) 1 Minimalne drzewo rozpinające - przegląd Definicja problemu Własności minimalnych drzew rozpinających Algorytm Kruskala Algorytm Prima Literatura Cormen,

Bardziej szczegółowo

Digraf. 13 maja 2017

Digraf. 13 maja 2017 Digraf 13 maja 2017 Graf skierowany, digraf, digraf prosty Definicja 1 Digraf prosty G to (V, E), gdzie V jest zbiorem wierzchołków, E jest rodziną zorientowanych krawędzi, między różnymi wierzchołkami,

Bardziej szczegółowo

Wykład 10 Grafy, algorytmy grafowe

Wykład 10 Grafy, algorytmy grafowe . Typy złożoności obliczeniowej Wykład Grafy, algorytmy grafowe Typ złożoności oznaczenie n Jedna operacja trwa µs 5 logarytmiczna lgn. s. s.7 s liniowa n. s.5 s. s Logarytmicznoliniowa nlgn. s.8 s.4 s

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Matematyka dyskretna. Andrzej Łachwa, UJ, /15 Matematyka dyskretna Andrzej Łachwa, UJ, 2014 andrzej.lachwa@uj.edu.pl 8/15 Grafy podstawowe definicje Graf to para G=(V, E), gdzie V to niepusty i skończony zbiór, którego elementy nazywamy wierzchołkami

Bardziej szczegółowo

Droga i cykl Eulera Przykłady zastosowania drogi i cyku Eulera Droga i cykl Hamiltona. Wykład 4. Droga i cykl Eulera i Hamiltona

Droga i cykl Eulera Przykłady zastosowania drogi i cyku Eulera Droga i cykl Hamiltona. Wykład 4. Droga i cykl Eulera i Hamiltona Wykład 4. Droga i cykl Eulera i Hamiltona 1 / 92 Grafy Eulera Droga i cykl Eulera Niech G będzie grafem spójnym. Definicja Jeżeli w grafie G istnieje zamknięta droga prosta zawierająca wszystkie krawędzie

Bardziej szczegółowo

Algebra liniowa z geometrią

Algebra liniowa z geometrią Algebra liniowa z geometrią Maciej Czarnecki 15 stycznia 2013 Spis treści 1 Geometria płaszczyzny 2 1.1 Wektory i skalary........................... 2 1.2 Macierze, wyznaczniki, układy równań liniowych.........

Bardziej szczegółowo

Elementy teorii grafów Elementy teorii grafów

Elementy teorii grafów Elementy teorii grafów Spis tresci 1 Spis tresci 1 Często w zagadnieniach praktycznych rozważa się pewien zbiór obiektów wraz z zależnościami jakie łączą te obiekty. Dla przykładu można badać pewną grupę ludzi oraz strukturę

Bardziej szczegółowo

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010 Algorytmy równoległe Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka Znajdowanie maksimum w zbiorze n liczb węzły - maksimum liczb głębokość = 3 praca = 4++ = 7 (operacji) n - liczność

Bardziej szczegółowo

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm Rozdział 5 Macierze Funkcję, która każdej parze liczb naturalnych (i,j) (i = 1,,n;j = 1,,m) przyporządkowuje dokładnie jedną liczbę a ij F, gdzie F = R lub F = C, nazywamy macierzą (rzeczywistą, gdy F

Bardziej szczegółowo

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew 1. ( pkt) Dany jest algorytm, który dla dowolnej liczby naturalnej n, powinien wyznaczyd sumę kolejnych liczb naturalnych mniejszych od n. Wynik algorytmu jest zapisany w zmiennej suma. Algorytm i=1; suma=0;

Bardziej szczegółowo

Kolorowanie wierzchołków grafu

Kolorowanie wierzchołków grafu Kolorowanie wierzchołków grafu Niech G będzie grafem prostym. Przez k-kolorowanie właściwe wierzchołków grafu G rozumiemy takie przyporządkowanie wierzchołkom grafu liczb naturalnych ze zbioru {1,...,

Bardziej szczegółowo

TEORETYCZNE PODSTAWY INFORMATYKI

TEORETYCZNE PODSTAWY INFORMATYKI 1 TEORETYCZNE PODSTAWY INFORMATYKI WFAiS UJ, Informatyka Stosowana I rok studiów, I stopień Wykład 14c 2 Definicje indukcyjne Twierdzenia dowodzone przez indukcje Definicje indukcyjne Definicja drzewa

Bardziej szczegółowo

3. Macierze i Układy Równań Liniowych

3. Macierze i Układy Równań Liniowych 3. Macierze i Układy Równań Liniowych Rozważamy równanie macierzowe z końcówki ostatniego wykładu ( ) 3 1 X = 4 1 ( ) 2 5 Podstawiając X = ( ) x y i wymnażając, otrzymujemy układ 2 równań liniowych 3x

Bardziej szczegółowo

Wykład 4. Droga i cykl Eulera i Hamiltona

Wykład 4. Droga i cykl Eulera i Hamiltona Wykład 4. i Hamiltona Wykład 4. i Hamiltona 1 / 35 Grafy Eulera Niech G będzie grafem spójnym. Definicja Jeżeli w grafie G istnieje zamknięta droga prosta zawierająca wszystkie krawędzie grafu, to taką

Bardziej szczegółowo

Kombinowanie o nieskończoności. 2. Wyspy, mosty, mapy i kredki materiały do ćwiczeń

Kombinowanie o nieskończoności. 2. Wyspy, mosty, mapy i kredki materiały do ćwiczeń Kombinowanie o nieskończoności. 2. Wyspy, mosty, mapy i kredki materiały do ćwiczeń Projekt Matematyka dla ciekawych świata spisał: Michał Korch 15 marzec 2018 Szybkie przypomnienie z wykładu Prezentacja

Bardziej szczegółowo

Lista 4. Kamil Matuszewski 22 marca 2016

Lista 4. Kamil Matuszewski 22 marca 2016 Lista 4 Kamil Matuszewski 22 marca 2016 1 2 3 4 5 6 7 8 9 10 Zadanie 2 Ułóż algorytm który dla danego n-wierzchołkowego drzewa i liczby k pokoloruje jak najwięcej wierzchołków tak, by na każdej ścieżce

Bardziej szczegółowo

Matematyka dyskretna - 7.Drzewa

Matematyka dyskretna - 7.Drzewa Matematyka dyskretna - 7.Drzewa W tym rozdziale zajmiemy się drzewami: specjalnym przypadkiem grafów. Są one szczególnie przydatne do przechowywania informacji, umożliwiającego szybki dostęp do nich. Definicja

Bardziej szczegółowo

7. Teoria drzew - spinanie i przeszukiwanie

7. Teoria drzew - spinanie i przeszukiwanie 7. Teoria drzew - spinanie i przeszukiwanie Grzegorz Kosiorowski Uniwersytet Ekonomiczny w Krakowie zima 2016/2017 rzegorz Kosiorowski (Uniwersytet Ekonomiczny 7. wteoria Krakowie) drzew - spinanie i przeszukiwanie

Bardziej szczegółowo

LOGIKA I TEORIA ZBIORÓW

LOGIKA I TEORIA ZBIORÓW LOGIKA I TEORIA ZBIORÓW Logika Logika jest nauką zajmującą się zdaniami Z punktu widzenia logiki istotne jest, czy dane zdanie jest prawdziwe, czy nie Nie jest natomiast istotne o czym to zdanie mówi Definicja

Bardziej szczegółowo

KURS MATEMATYKA DYSKRETNA

KURS MATEMATYKA DYSKRETNA KURS MATEMATYKA DYSKRETNA LEKCJA 28 Grafy hamiltonowskie Odpowiedzi do zadania domowego www.akademia.etrapez.pl Strona 1 Część 1: TEST 1) b 2) a 3) b 4) d 5) c 6) d 7) b 8) b 9) d 10) a Zad. 1 ODPOWIEDZI

Bardziej szczegółowo

Ogólne wiadomości o grafach

Ogólne wiadomości o grafach Ogólne wiadomości o grafach Algorytmy i struktury danych Wykład 5. Rok akademicki: / Pojęcie grafu Graf zbiór wierzchołków połączonych za pomocą krawędzi. Podstawowe rodzaje grafów: grafy nieskierowane,

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, A/14

Matematyka dyskretna. Andrzej Łachwa, UJ, A/14 Matematyka dyskretna Andrzej Łachwa, UJ, 2019 andrzej.lachwa@uj.edu.pl 1A/14 Literatura obowiązkowa [1] K.A.Ross, Ch.R.B.Wright: Matematyka Dyskretna. Wydawnictwo Naukowe PWN, Warszawa 1996 [2] R.L.Graham,

Bardziej szczegółowo

Grafy i Zastosowania. 5: Drzewa Rozpinające. c Marcin Sydow. Drzewa rozpinające. Cykle i rozcięcia fundamentalne. Zastosowania

Grafy i Zastosowania. 5: Drzewa Rozpinające. c Marcin Sydow. Drzewa rozpinające. Cykle i rozcięcia fundamentalne. Zastosowania Grafy i Grafy i 5: Rozpinające Spis zagadnień Grafy i i lasy cykle fundamentalne i własności cykli i rozcięć przestrzenie cykli i rozcięć* : zastosowanie w sieciach elektrycznych minimalne * algorytm Kruskala*

Bardziej szczegółowo

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II Algorytmy Równoległe i Rozproszone Część V - Model PRAM II Łukasz Kuszner pokój 209, WETI http://www.sphere.pl/ kuszner/ kuszner@sphere.pl Oficjalna strona wykładu http://www.sphere.pl/ kuszner/arir/ 2005/06

Bardziej szczegółowo

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Matematyka dyskretna. Andrzej Łachwa, UJ, /15 Matematyka dyskretna Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl 15/15 Twierdzenie Dla grafu prostego następujące warunki są równoważne: 1) jest drzewem, 2) nie zawiera cykli i ma krawędzi, 3)

Bardziej szczegółowo

IX Olimpiada Matematyczna Gimnazjalistów

IX Olimpiada Matematyczna Gimnazjalistów IX Olimpiada Matematyczna Gimnazjalistów Zawody stopnia pierwszego część testowa www.omg.edu.pl (3 października 2013 r.) Rozwiązania zadań testowych 1. Liczba 3 9 3 27 jest a) niewymierna; b) równa 3 27;

Bardziej szczegółowo

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne Przypominajka: 152 drzewo filogenetyczne to drzewo, którego liśćmi są istniejące gatunki, a węzły wewnętrzne mają stopień większy niż jeden i reprezentują

Bardziej szczegółowo

Podstawowe pojęcia dotyczące drzew Podstawowe pojęcia dotyczące grafów Przykłady drzew i grafów

Podstawowe pojęcia dotyczące drzew Podstawowe pojęcia dotyczące grafów Przykłady drzew i grafów Podstawowe pojęcia dotyczące drzew Podstawowe pojęcia dotyczące grafów Przykłady drzew i grafów Drzewa: Drzewo (ang. tree) jest strukturą danych zbudowaną z elementów, które nazywamy węzłami (ang. node).

Bardziej szczegółowo

Luty 2001 Algorytmy (4) 2000/2001

Luty 2001 Algorytmy (4) 2000/2001 Mając dany zbiór elementów, chcemy znaleźć w nim element największy (maksimum), bądź najmniejszy (minimum). We wszystkich naturalnych metodach znajdywania najmniejszego i największego elementu obecne jest

Bardziej szczegółowo

0 + 0 = 0, = 1, = 1, = 0.

0 + 0 = 0, = 1, = 1, = 0. 5 Kody liniowe Jak już wiemy, w celu przesłania zakodowanego tekstu dzielimy go na bloki i do każdego z bloków dodajemy tak zwane bity sprawdzające. Bity te są w ścisłej zależności z bitami informacyjnymi,

Bardziej szczegółowo

1. Algorytmy przeszukiwania. Przeszukiwanie wszerz i w głąb.

1. Algorytmy przeszukiwania. Przeszukiwanie wszerz i w głąb. 1. Algorytmy przeszukiwania. Przeszukiwanie wszerz i w głąb. Algorytmy przeszukiwania w głąb i wszerz są najczęściej stosowanymi algorytmami przeszukiwania. Wykorzystuje się je do zbadania istnienia połączenie

Bardziej szczegółowo

Teoria grafów dla małolatów. Andrzej Przemysław Urbański Instytut Informatyki Politechnika Poznańska

Teoria grafów dla małolatów. Andrzej Przemysław Urbański Instytut Informatyki Politechnika Poznańska Teoria grafów dla małolatów Andrzej Przemysław Urbański Instytut Informatyki Politechnika Poznańska Wstęp Matematyka to wiele różnych dyscyplin Bowiem świat jest bardzo skomplikowany wymaga rozważenia

Bardziej szczegółowo

TEORIA GRAFÓW I SIECI

TEORIA GRAFÓW I SIECI TEORIA GRAFÓW I SIECI Temat nr : Kolorowanie grafów dr hab. inż. Zbigniew TARAPATA, prof. WAT e-mail: zbigniew.tarapata@wat.edu.pl http://tarapata.edu.pl tel.: -8-9-, p./ Zakład Badań Operacyjnych i Wspomagania

Bardziej szczegółowo

Grupy. Permutacje 1. (G2) istnieje element jednostkowy (lub neutralny), tzn. taki element e G, że dla dowolnego a G zachodzi.

Grupy. Permutacje 1. (G2) istnieje element jednostkowy (lub neutralny), tzn. taki element e G, że dla dowolnego a G zachodzi. Grupy. Permutacje 1 1 Definicja grupy Niech G będzie zbiorem. Działaniem na zbiorze G nazywamy odwzorowanie (oznaczane, jak mnożenie, przez ) przyporządkowujące każdej parze uporządkowanej (a, b) G G element

Bardziej szczegółowo

Matematyka dyskretna - 5.Grafy.

Matematyka dyskretna - 5.Grafy. Matematyka dyskretna - 5.Grafy. W tym rozdziale zajmiemy się grafami. Są to wykresy zawierające rozmaite informacje, przedstawiające połączenia pomiędzy różnymi swoimi elementami. Algorytmy na nich oparte

Bardziej szczegółowo

Algorytmy i Struktury Danych.

Algorytmy i Struktury Danych. Algorytmy i Struktury Danych. Grafy dr hab. Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 9 Bożena Woźna-Szcześniak (AJD) Algorytmy i Struktury Danych. Wykład 9 1 / 53

Bardziej szczegółowo

XII Olimpiada Matematyczna Juniorów Zawody stopnia pierwszego część korespondencyjna (1 września 2016 r. 17 października 2016 r.)

XII Olimpiada Matematyczna Juniorów Zawody stopnia pierwszego część korespondencyjna (1 września 2016 r. 17 października 2016 r.) XII Olimpiada Matematyczna Juniorów Zawody stopnia pierwszego część korespondencyjna ( września 06 r. 7 października 06 r.) Szkice rozwiązań zadań konkursowych. Liczby wymierne a, b, c spełniają równanie

Bardziej szczegółowo

Krzywa uniwersalna Sierpińskiego

Krzywa uniwersalna Sierpińskiego Krzywa uniwersalna Sierpińskiego Małgorzata Blaszke Karol Grzyb Streszczenie W niniejszej pracy omówimy krzywą uniwersalną Sierpińskiego, zwaną również dywanem Sierpińskiego. Pokażemy klasyczną metodę

Bardziej szczegółowo

domykanie relacji, relacja równoważności, rozkłady zbiorów

domykanie relacji, relacja równoważności, rozkłady zbiorów 1 of 8 2012-03-28 17:45 Logika i teoria mnogości/wykład 5: Para uporządkowana iloczyn kartezjański relacje domykanie relacji relacja równoważności rozkłady zbiorów From Studia Informatyczne < Logika i

Bardziej szczegółowo

6a. Grafy eulerowskie i hamiltonowskie

6a. Grafy eulerowskie i hamiltonowskie 6a. Grafy eulerowskie i hamiltonowskie Grzegorz Kosiorowski Uniwersytet Ekonomiczny w Krakowie zima 2016/2017 rzegorz Kosiorowski (Uniwersytet Ekonomiczny6a. w Krakowie) Grafy eulerowskie i hamiltonowskie

Bardziej szczegółowo

Rzut oka na współczesną matematykę spotkanie 9-10: Zagadnienie czterech barw i teoria grafów

Rzut oka na współczesną matematykę spotkanie 9-10: Zagadnienie czterech barw i teoria grafów Rzut oka na współczesną matematykę spotkanie 9-10: Zagadnienie czterech barw i teoria grafów P. Strzelecki pawelst@mimuw.edu.pl Instytut Matematyki, Uniwersytet Warszawski MISH UW, semestr zimowy 2011-12

Bardziej szczegółowo

Matematyka dyskretna - 6.Grafy

Matematyka dyskretna - 6.Grafy Matematyka dyskretna - 6.Grafy W tym rozdziale zajmiemy się grafami. Są to wykresy zawierające rozmaite informacje, przedstawiające połączenia pomiędzy różnymi swoimi elementami. Algorytmy na nich oparte

Bardziej szczegółowo

Algorytmy z powracaniem

Algorytmy z powracaniem Algorytmy z powracaniem Materiały Grafem nazywamy zbiór G = (V, E), gdzie: V jest zbiorem wierzchołków (ang. vertex) E jest zbiorem krawędzi (E można też określić jako podzbiór zbioru nieuporządkowanych

Bardziej szczegółowo

XI Olimpiada Matematyczna Gimnazjalistów

XI Olimpiada Matematyczna Gimnazjalistów XI Olimpiada Matematyczna Gimnazjalistów Zawody stopnia pierwszego część testowa www.omg.edu.pl (24 września 2015 r.) Rozwiązania zadań testowych 1. Dane są takie dodatnie liczby a i b, że 30% liczby a

Bardziej szczegółowo