Minimalne drzewo rozpinaj ce
|
|
- Sylwester Ciesielski
- 7 lat temu
- Przeglądów:
Transkrypt
1 Minimalne drzewo rozpinaj ce dr Andrzej Mróz (UMK w Toruniu) 013 Projekt wspóªnansowany ze ±rodków Unii Europejskiej w ramach Europejskiego Funduszu Spoªecznego Projekt pn. Wzmocnienie potencjaªu dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczych Poddziaªanie Programu Operacyjnego Kapitaª Ludzki
2 Spis tre±ci 1 Wst p Problem Drzewo rozpinaj ce Drzewo rozpinaj ce przykªad Minimalne drzewo rozpinaj ce Minimalne drzewo rozpinaj ce przykªad Cel - poszukiwanie MST Idee 5.1 Strategia Problem Idea algorytmu Kruskala Idea algorytmu Prima Zbiory rozª czne Struktury danych dla zbiorów rozª cznych Proste zastosowanie Heurystyka Implementacja listy Implementacja drzewa z korzeniem Kruskal Poprawno± Przekroje Algorytm Przebieg algorytmu Kruskala Prim Poprawno± Implementacja Algorytm Przebieg algorytmu Prima
3 1 Wst p Problem Ustalmy spójny niezorientowany graf G = (V, E) z funkcj wagi w : E R +. Rozwa»my nast puj c interpretacj grafu G: wierzchoªki V = {1,,..., n} = miasta, kraw dzie = potencjalne bezpo±rednie drogowe poª czenia pomi dzy miastami, waga w(i, j) kraw dzi {i, j} E = koszt budowy poª czenia pomi dzy miastami i i j. Zagadnienie optymalizacyjne. Zbudowa tylko te drogi spo±ród opisanych przez graf G (czyli wybra podgraf G grafu G) tak, by: 1. pomi dzy ka»d par miast (wierzchoªków) istniaªo drogowe poª czenie (niekoniecznie bezpo±rednie),. koszt budowy tej sieci dróg byª najni»szy spo±ród wszystkich rozwi za«speªniaj cych punkt 1. Šatwo zauwa»y,»e je»eli podgraf G speªnia te wªasno±ci, to 1. zawiera wszystkie wierzchoªki grafu G,. jest spójny, 3. nie zawiera cykli. W szczególno±ci i 3 oznaczaj,»e G powinien by drzewem. Tzw. minimalnym drzewem rozpinaj cym, które za chwil zdeniujemy w sposób bardziej formalny. Problem ten pojawia si w wielu innych kontekstach informatycznych, cz sto znalezienie minimalnego drzewa rozpinaj cego jest pierwszym krokiem w rozwi zaniach innych problemów. Czasem stosuje si te» nazw minimalne drzewo spinaj ce. 1. Drzewo rozpinaj ce Niech G = (V, E) b dzie spójnym grafem niezorientowanym. Denicja. Drzewo rozpinaj ce (ang. spanning tree) grafu G = drzewo T = (V, E ) takie,»e E E. Tzn. T jest drzewem zawieraj cym wszystkie wierzchoªki G, za± jego zbiór kraw dzi jest podzbiorem zbioru kraw dzi G. Drzewo rozpinaj ce powstaje z grafu G poprzez usuni cie kraw dzi nale» cych do cykli. Ka»de drzewo rozpinaj ce grafu G ma V 1 kraw dzi. 1.3 Drzewo rozpinaj ce przykªad Drzewo rozpinaj ce nie jest poj ciem jednoznacznym.
4 Dla grafu G: 4 Drzewem rozpinaj cym jest podgraf T : Ale te» podgraf T : Oraz podgraf T 3 : 1.4 Minimalne drzewo rozpinaj ce Niech G = (V, E) b dzie spójnym grafem niezorientowanym z wag w : E R +. Dla dowolnego drzewa rozpinaj cego T = (V, E ) grafu G deniujemy jego wag w(t ) = w(u, v). (u,v) E Denicja. Minimalne drzewo rozpinaj ce (ang. minimal spanning tree MST) grafu G = drzewo rozpinaj ce T o minimalnej wadze w(t ) (spo±ród wszystkich drzew rozpinaj cych grafu G). 1.5 Minimalne drzewo rozpinaj ce przykªad Dla grafu z wagami: przykªadowe wagi drzew rozpinaj cych: T : 1 w(t ) = 35 9
5 5 T : 8 w(t ) = 48 T 3 : 1 8 w(t 3 ) = Nietrudno sprawdzi,»e dla powy»szego grafu G minimalnym drzewem rozpinaj cym jest T 3. Ale zauwa»my,»e T 3 nie jest jedynym MST. Inne drzewo rozpinaj ce o tej samej wadze co T 3 : T 4 : 1 8 w(t 4 ) = Cel - poszukiwanie MST Rozwi zanie naiwne: Wygenerowa wszystkie drzewa rozpinaj ce i wybra te o najmniejszej wadze. Oczywista wada: Drzew rozpinaj cych jest na ogóª bardzo du»o. Ponadto, wcale nie jest to takie proste pod wzgl dem implementacyjnym. Cel: Opracowa efektywn metod znajdowania (jakiegokolwiek) MST. Idee.1 Strategia Ogólna strategia zachªanna rozrastanie si podgrafu T o zbiorze kraw dzi A, który na ko«cu b dzie MST. Dane: Spójny graf niezorientowany G = (V, E) z funkcj wagow w : E R +. Cel: Znalezienie MST dla G. Podgraf T rozrasta si w wyniku dodawania kolejnych kraw dzi. W czasie algorytmu trzymamy zbiór A, który zawsze jest podzbiorem zbioru kraw dzi pewnego MST. W ka»dym kroku wyznaczamy kraw d¹, któr mo»na doda do A bez straty jego wªasno±ci (kraw d¹ bezpieczn dla A).
6 B dziemy zatem realizowa strategi opisan przez bardzo ogólny pseudokod: 6 GenericMST(G, w) A := ; 3 while A nie tworzy drzewa rozpinaj cego do 4 begin 5 znajd¹ kraw d¹ {u, v} E\A bezpieczn dla A; 6 A := A { {u, v} } 7 end 8 end; Poprawno± ogólnie: Niezmiennik A jest podzbiorem zbioru kraw dzi pewnego MST jest zachowany w ka»dym kroku. Kraw d¹ bezpieczna w ka»dym kroku istnieje gwarantuje to niezmiennik.. Problem Gªówny problem. Jak rozpoznawa bezpieczn kraw d¹? Omówimy dwa ró»ne rozwi zania tego problemu, tj. dwie ró»ne realizacje ogólnej strategii GenericMST: Algorytm Kruskala. Algorytm Prima..3 Idea algorytmu Kruskala Nieformalny opis W ka»dym kroku rozrastaj cy si podgraf T = (V, A) grafu G jest lasem (tj. skªadowe s drzewami). Na pocz tku A =, tj. skªadowe T to jednowierzchoªkowe drzewa. Dodaj c bezpieczn kraw d¹ do A scalamy dwie skªadowe T w jedn. Na ko«cu T scali si w jedno drzewo. W poszukiwaniu kraw dzi bezpiecznych w kolejnych krokach przetwarzamy kraw dzie w kolejno±ci ich rosn cych (niemalej cych) wag. Kraw d¹ e jest bezpieczna, gdy dodanie jej do A nie spowoduje pojawienia si cyklu (jest to równowa»ne z tym,»e e ª czy dwie ró»ne dotychczasowe skªadowe w T ). Nale»y zatem umie rozpoznawa ró»ne skªadowe w grae T. Do tego wykorzystamy now struktur danych, tzw. struktur zbiorów rozª cznych. jego
7 .4 Idea algorytmu Prima Nieformalny opis 7 W odró»nieniu od algorytmu Kruskala, tu T zawsze stanowi jedno drzewo. Na pocz tku T ma 1 wierzchoªek (dowolnie wybrany z G). W ka»dym kroku kraw d¹ bezpieczna to kraw d¹ o najmniejszej wadze spo±ród kraw dzi wystaj cych z T (tj. ª cz cych wierzchoªek z T z wierzchoªkiem spoza T ). Nale»y zatem umie efektywnie wybiera kraw dzie bezpieczne j.w. Do tego wykorzystamy odpowiedni kolejk priorytetow. 3 Zbiory rozª czne 3.1 Struktury danych dla zbiorów rozª cznych W algorytmie Kruskala wykorzystamy nast puj c dynamiczn struktur danych. Kontekst: n ró»nych elementów pogrupowanych w pewn liczb zbiorów rozª cznych. Cel: zdeniowanie i zarz dzanie strukturami danych umo»liwiaj cymi operacje m.in.: ª czenia dwóch zbiorów, stwierdzania, do którego zbioru nale»y element x, stwierdzania, czy dwa elementy x, y nale» do tego samego zbioru. Zarz dzanie rodzin S = {S 1, S,..., S k } rozª cznych zbiorów dynamicznych. Pomysª: ka»dy zbiór S i identykujemy poprzez jego reprezentanta, czyli wyró»niony element x S i. Warunki nakªadane na reprezentanta: na ogóª nie ma znaczenia, który element jest reprezentantem, wa»ne jest, by zadaj c dwukrotnie pytanie o reprezentanta danego zbioru, otrzyma tak sam odpowied¹, o ile zbiór w tym czasie si nie zmieniaª, czasami ustala si na pocz tku pewn zasad wyboru reprezentanta (np. najmniejszym kluczem...). Podstawowe operacje: element z MakeSet(x) tworzy nowy jednoelementowy zbiór S = {x} (o reprezentancie x); x nie mo»e by elementem innego zbioru. Union(x, y) ª czy dwa rozª czne zbiory S x, S y zawieraj ce odpowiednio x i y w nowy zbiór S x S y. Jego reprezentantem mo»e by dowolny element S x S y, na ogóª reprezentant S x lub S y. FindSet(x) zwraca wska¹nik do reprezentanta (jedynego) zbioru zawieraj cego x. stwierdzanie, czy dwa elementy x, y nale» do tego samego zbioru: test FindSet(x) = FindSet(y).
8 3. Proste zastosowanie Przykªad zastosowania: rozpoznawanie spójnych skªadowych w grae (niezorientowanym) G = (V, E). ConnectedComponents(G) for ka»dy v V do 3 MakeSet(v); 4 for ka»da (u, v) E do 5 if FindSet(u) <> FindSet(v) then 6 Union(u, v); 7 end; Po wykonaniu podziaª wierzchoªków na zbiory rozª czne odpowiada podziaªowi na skªadowe spójno±ci. W podobnym kontek±cie wykorzystamy zbiory rozª czne w algorytmie Kruskala (który jest de facto pewn modykacj powy»szej procedury). Teraz, do testowania czy wierzchoªki u i v nale» do tej samej skªadowej mo»emy wykorzysta procedur : SameComponent(u, v) if FindSet(u) = FindSet(v) then 3 return true 4 else return false 5 end; Wiemy: do wyznaczania skªadowych mo»na wykorzysta przegl danie grafu. Gdy do grafu kraw dzie s dodawane w czasie dziaªania algorytmu (czyli trzeba uaktualnia spójne skªadowe), to implementacja przy pomocy zbiorów rozª cznych mo»e by efektywniejsza Heurystyka W dalszej cz ±ci przeprowadzimy prost analiz heurystyczn. Przez heurystyk rozumiemy tu takie projektowanie operacji, by zmniejszy ich koszt zamortyzowany (niekoniecznie koszt pesymistyczny = zªo»ono± pesymistyczn ). Denicja. Koszt zamortyzowany = koszt ±redni operacji P w ci gu n wykona«operacji P. Uwaga. Sªowo heurystyka ma w informatyce równie» inne znaczenia. Przykªad. Wykonujemy kolejno n sortowa«algorytmem sortowania b belkowego P na tym samym zbiorze danych X. Wówczas tylko za pierwszym razem wykonywane s nietrywialne modykacje na X, st d tu koszt zamortyzowany jest znacznie ni»szy ni» koszt pesymistyczny algorytmu P. Oczywi±cie koszt zamortyzowany istotnie zale»y od kontekstu wykonywania danej operacji.
9 3.4 Implementacja listy Implementacja zbiorów rozª cznych w postaci list. 9 Ka»dy zbiór przechowywany jako (dynamiczna) lista. Pierwszy skªadnik listy = reprezentant zbioru. Ka»dy skªadnik listy posiada pola: element zbioru, wska¹nik do nast pnego skªadnika listy, wska¹nik (prowadz cy wstecz) do reprezentanta. MakeSet(x) stworzenie nowej listy o jedynym skªadniku x. Zªo»ono± : O(1). FindSet(x) zwrócenie wska¹nika od x do reprezentanta zbioru. Zªo»ono± : O(1). Union(x, y) doª czenie listy L y z elementem y na koniec listy L x z elementem x. Reprezentantem nowego zbioru jest element b d cy wcze±niej reprezentantem zbioru zawieraj cego x. Trzeba uaktualni wska¹nik do reprezentanta we wszystkich skªadnikach znajduj cych si pierwotnie na li±cie L y. Zªo»ono± : O(s), gdzie s = L y (gdy mamy dost p do ostatniego elementu L x ). Usprawnienie: heurystyka ª czenia z wywa»aniem. Zawsze doª czamy krótsz list do dªu»szej. Trzeba przechowywa (np. w reprezentancie) i uaktualnia rozmiar listy. Asymptotyczna zªo»ono± pojedynczej operacji Union pozostaje taka sama, lecz koszt zamortyzowany jest mniejszy. Pokazuje si,»e wykonanie ci gu m operacji MakeSet, Union i FindSet, spo±ród których n to MakeSet zajmuje przy wywa»aniu czas O(m + nlog n). Bez wywa»ania: O(m ). 3.5 Implementacja drzewa z korzeniem Implementacja w postaci drzew z korzeniem. Ka»dy zbiór przechowywany jako drzewo z korzeniem. Korze«drzewa = reprezentant zbioru. Ka»dy wierzchoªek drzewa posiada pola: element zbioru, wska¹nik do ojca w drzewie (korze«wskazuje na siebie). Struktur drzewa mo»na tak»e zaimplementowa przy wykorzystaniu tablicy ojców indeksowanej elementami, które grupujemy w zbiory.
10 Przykªad. Trzy zbiory rozª czne grupuj ce 10 elementów, reprezentowane poprzez drzewa: s jednoznacznie zakodowane przy pomocy tablicy ojców: i ojciec[i] Operacje: MakeSet(x) stworzenie nowego drzewa o jedynym wierzchoªku x. Zªo»ono± : O(1). FindSet(x) przej±cie po wska¹nikach od x do ojca itp. a» do korzenia. Zªo»ono± : O(h), gdzie h = wysoko± drzewa. Union(x, y) zmiana wska¹nika w korzeniu drzewa T x (zawieraj cego x) tak aby wskazywaª na korze«drzewa T y (zawieraj cego y). Zªo»ono± : O(1) (gdy mamy dost p do korzeni). Dwie heurystyki: 1. Š czenie wg wysoko±ci: drzewo o mniejszej wysoko±ci doª czamy do drzewa o wi kszej wysoko±ci (+ uaktualnienie wysoko±ci).. Kompresja drogi: stosowana przy operacji FindSet(x) polega na zmianie wska¹ników we wszystkich wierzchoªkach na drodze od x do korzenia tak, by wskazywaªy na korze«. Oznaczenia: Implementacja z uwzgl dnieniem heurystyk. h(x) = wysoko± wierzchoªka x ( N), ojciec(x) = ojciec wierzchoªka x (wska¹nik lub odwoªanie do tablicy ojców). MakeSet(x) ojciec(x) := x; 3 h(x) := 0 4 end;
11 11 Š czenie wg wysoko±ci. Wykorzystamy procedur pomocnicz : Link(x, y) if h(x) > h(y) then 3 ojciec(y) := x 4 else begin 5 ojciec(x) := y; 6 if h(x) = h(y) then 7 h(y) := h(y) end 9 end; Union(x, y) Link(FindSet(x), FindSet(y)) 3 end; FindSet z kompresj drogi: FindSet(x) if x <> ojciec(x) then 3 ojciec(x) := FindSet( ojciec(x) ); 4 return ojciec(x) 5 end; Uwaga. Zauwa»my,»e po FindSet wysoko± drzewa mo»e ulec zmianie (zmniejszeniu). Mimo to, nie uaktualniamy warto±ci h dla»adnego wierzchoªka. Utrzymywanie poprawnych warto±ci wysoko±ci drzew byªoby niepotrzebnie kosztowne. Zatem warto±ci h nale»y tak naprawd interpretowa jako górne ograniczenia wysoko±ci drzew. Zaªó»my,»e wykonujemy ci g m operacji MakeSet, Union i FindSet, spo±ród których n to MakeSet. Twierdzenie (Hopcroft, Ullman). Zªo»ono± wykonania ci gu powy»szych operacji z uwzgl dnieniem heurystyk 1 i wynosi O(m log n). log = logarytm iterowany. log jest funkcj bardzo wolno rosn c. log n 5 dla wszystkich 1 n Liczba atomów we wszech±wiecie < Kruskal 4.1 Poprawno± Zanim przedstawimy konkretny pseudokod, wprowadzimy kilka poj i faktów pozwalaj cych zrozumie, dlaczego idea algorytmu Kruskala przedstawiona wcze±niej zawsze daje poprawne rozwi zanie.
12 Poj cia te wyst puj te» w innych kontekstach algorytmów grafowych. 1 Bardziej szczegóªowy dowód poprawno±ci mo»na znale¹ np. w ksi»ce [1] ze spisu literatury do wykªadu (T. H. Cormen et al.). 4. Przekroje Denicje: Ka»dy podzbiór S V wyznacza przekrój (S, V \ S) grafu G = (V, E). Kraw d¹ {u, v} krzy»uje si z przekrojem (S, V \ S), je±li jeden z jej ko«ców nale»y do S, a drugi do V \ S. Przekrój (S, V \ S) uwzgl dnia zbiór kraw dzi A, je±li»adna kraw d¹ z A nie krzy»uje si z tym przekrojem. Kraw d¹ e E krzy»uj ca si z przekrojem jest kraw dzi lekk, je±li w(e) jest najmniejsza spo±ród wag wszystkich kraw dzi krzy»uj cych si z tym przekrojem. Przytoczymy bez dowodu kluczowy fakt, na którym opiera si uzasadnienie poprawno±ci obu algorytmów. G = (V, E) spójny graf niezorientowany z funkcj wagow w : E R + Twierdzenie Niech E A podzbiór zbioru kraw dzi pewnego MST dla G, (S, V \ S) dowolny przekrój grafu G uwzgl dniaj cy A, {u, v} kraw d¹ lekka krzy»uj ca si z (S, V \ S). Wówczas kraw d¹ {u, v} jest bezpieczna dla A. Przypomnienie idei algorytmu: GenericMST(G, w) A := ; 3 while A nie tworzy drzewa rozpinaj cego do 4 begin 5 znajd¹ kraw d¹ {u, v} E\A bezpieczn dla A; 6 A := A { {u, v} } 7 end 8 end; Rozwa»my graf T = (V, A). skªadowa jest drzewem. W ka»dym kroku jest on acykliczny ka»da jego spójna na pocz tku A = T skªada si z V jednowierzchoªkowych drzew, poniewa» A { {u, v} } musi by acykliczny, ka»da bezpieczna kraw d¹ {u, v} dla A ª czy ró»ne skªadowe z T, w ka»dym kroku kolejne skªadowe T ª cz si (liczba drzew maleje), na ko«cu las T zawiera tylko 1 drzewo jest MST.
13 Wniosek Niech E A podzbiór zbioru kraw dzi pewnego MST dla G, C = spójna skªadowa w lesie T = (V, A), {u, v} kraw d¹ o najmniejszej wadze spo±ród ª cz cych C z pewn inn skªadow w T. Wówczas kraw d¹ {u, v} jest bezpieczna dla A. Dowód. Przekrój (C, V \ C) uwzgl dnia A. {u, v} jest kraw dzi lekk krzy»uj c si z tym przekrojem. Na mocy twierdzenia {u, v} jest kraw dzi bezpieczn dla A. 4.3 Algorytm Podsumowanie: szczegóªowa wersja algorytmu GenericMST algorytm Kruskala (który jest w pewnym sensie modykacj procedury ConnectedComponents z 3.). MST-Kruskal(G, w) A := ; 3 for ka»dy v V do 4 MakeSet(v); 5 posortuj E niemalej co wzgl dem wag w; 6 for ka»da {u, v} E, w kolejno±ci niemalej cych wag do 7 if FindSet(u) <> FindSet(v) then 8 begin 9 A := A { {u, v} }; 10 Union(u, v) 11 end 1 return A 13 end; Zªo»ono± : O( E log E ) (przy najszybszych implementacjach zbiorów rozª cznych i sortowania, por. Twierdzenie 3.5). 4.4 Przebieg algorytmu Kruskala
14
15 5 Prim 5.1 Poprawno± Inna realizacja ogólnego algorytmu GenericMST algorytm Prima W przeciwie«stwie do algorytmu Kruskala, kraw dzie z A tworz zawsze pojedyncze drzewo. Pocz tkowo drzewo to skªada si z dowolnie wybranego wierzchoªka-korzenia r V ; nast pnie ro±nie do chwili, w której rozpina wszystkie wierzchoªki z V. Rozwa»any przekrój: (V (A), V \ V (A)) (V (A) := zbiór ko«ców kraw dzi z A). W ka»dym kroku dodajemy kraw d¹ lekk krzy»uj c si z tym przekrojem (tj. kraw d¹ o najmniejszej wadze spo±ród tych wystaj cych z A). Przekrój (V (A), V \ V (A)) uwzgl dnia A, zatem kraw d¹ ta jest bezpieczna dla A (patrz Twierdzenie 4.). 5. Implementacja Jak wyznacza kraw d¹ lekk krzy»uj c si z przekrojem (V (A), V \ V (A))? Wierzchoªki spoza rozrastaj cego si drzewa trzymamy w kolejce priorytetowej Q (por. poprzedni wykªad). Dla ka»dego v V kluczem klucz(v) (tzn. priorytetem wyznaczaj cym pozycj w kolejce Q) jest najmniejsza waga spo±ród wag kraw dzi ª cz cych v z wierzchoªkami drzewa. W zmiennej π[v] pami tamy ojca v w obliczanym drzewie. Podczas wykonywania algorytmu zbiór A jest pami tany niejawnie jako A = { {π[v], v} : v (V \ {r}) \ Q}. Po zako«czeniu algorytmu Q =, zbiorem kraw dzi MST w G jest wi c A = { {π[v], v} : v V \ {r}}. Przypomnijmy,»e symbolem Adj[u] oznaczamy zbiór s siadów wierzchoªka u. 5.3 Algorytm Inna realizacja ogólnego algorytmu algorytm Prima.
16 MST-Prim(G, w, r) Q := V; 3 for ka»dy u Q do klucz(u) := ; 4 klucz(r) := 0; 5 π[r] := ; 6 while Q <> do 7 begin 8 u := ExtractMin(Q); 9 for ka»dy v Adj[u] do 10 if (v Q) and (w(u, v) < klucz(v)) then 1 1 π[v] := u; 13 klucz[v] := w(u, v) 14 end end; 16 return π 17 end; 16 Zªo»ono± : O( E log V ) (gdy kolejka implementowana na kopcu). 5.4 Przebieg algorytmu Prima Dowolnie ustalamy korze«r - wierzchoªek startowy. r r r r r r 1 8 9
Minimalne drzewo rozpinaj ce
Minimalne drzewo rozpinaj ce Autor projektu: dr Andrzej Mróz (UMK) Projekt pn. Wzmocnienie potencjaªu dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczych realizowany w ramach Poddziaªania
Bardziej szczegółowoMinimalne drzewa rozpinaj ce
y i y i drzewa Spis zagadnie«y i drzewa i lasy cykle fundamentalne i rozci cia fundamentalne wªasno±ci cykli i rozci minimalne drzewa algorytm algorytm Drzewo y i spójnego, nieskierowanego grafu prostego
Bardziej szczegółowoAlgorytmy grafowe 2. Andrzej Jastrz bski. Akademia ETI. Politechnika Gda«ska Algorytmy grafowe 2
Algorytmy grafowe 2 Andrzej Jastrz bski Akademia ETI Minimalne drzewo spinaj ce Drzewem nazywamy spójny graf nie posiadaj cy cyklu. Liczba wierzchoªków drzewa jest o jeden wi ksza od liczby jego kraw dzi.
Bardziej szczegółowoPodstawowe algorytmy grafowe i ich zastosowania
Podstawowe algorytmy grafowe i ich zastosowania dr Andrzej Mróz (UMK w Toruniu) 2013 Projekt wspóªnansowany ze ±rodków Unii Europejskiej w ramach Europejskiego Funduszu Spoªecznego Projekt pn. Wzmocnienie
Bardziej szczegółowoNajkrótsze drogi w grafach z wagami
Najkrótsze drogi w grafach z wagami dr Andrzej Mróz (UMK w Toruniu) 013 Projekt wspóªnansowany ze ±rodków Unii Europejskiej w ramach Europejskiego Funduszu Spoªecznego Projekt pn. Wzmocnienie potencjaªu
Bardziej szczegółowoPodstawowe algorytmy grafowe i ich zastosowania
Podstawowe algorytmy grafowe i ich zastosowania Autor projektu: dr Andrzej Mróz (UMK) Projekt pn. Wzmocnienie potencjaªu dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczych realizowany
Bardziej szczegółowoNajkrótsze drogi w grafach z wagami
Najkrótsze drogi w grafach z wagami Autor projektu: dr Andrzej Mróz (UMK) Projekt pn. Wzmocnienie potencjaªu dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczych realizowany w ramach Poddziaªania
Bardziej szczegółowoZadania z kolokwiów ze Wst pu do Informatyki. Semestr II.
Zadania z kolokwiów ze Wst pu do Informatyki. Semestr II. Poni»sze zadania s wyborem zada«z kolokwiów ze Wst pu do Informatyki jakie przeprowadziªem w ci gu ostatnich lat. Marek Zawadowski Zadanie 1 Napisz
Bardziej szczegółowoWykł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ółowoZad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA. W obu podpunktach zakªadamy,»e kolejno± ta«ców jest wa»na.
Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA Zadanko 1 (12p.) Na imprezie w Noc Kupaªy s 44 dziewczyny. Nosz one 11 ró»nych imion, a dla ka»dego imienia s dokªadnie 4 dziewczyny o tym imieniu przy czym ka»da
Bardziej szczegółowoc Marcin Sydow Spójno± Grafy i Zastosowania Grafy Eulerowskie 2: Drogi i Cykle Grafy Hamiltonowskie Podsumowanie
2: Drogi i Cykle Spis Zagadnie«drogi i cykle spójno± w tym sªaba i silna k-spójno± (wierzchoªkowa i kraw dziowa) dekompozycja grafu na bloki odlegªo±ci w grae i poj cia pochodne grafy Eulera i Hamiltona
Bardziej szczegółowoDrzewa Gomory-Hu Wprowadzenie. Drzewa Gomory-Hu. Jakub Š cki. 14 pa¹dziernika 2009
Wprowadzenie Drzewa Gomory-Hu Jakub Š cki 14 pa¹dziernika 2009 Wprowadzenie 1 Wprowadzenie Podstawowe poj cia i fakty 2 Istnienie drzew Gomory-Hu 3 Algorytm budowy drzew 4 Problemy otwarte Wprowadzenie
Bardziej szczegółowoc Marcin Sydow Przepªywy Grafy i Zastosowania Podsumowanie 12: Przepªywy w sieciach
12: w sieciach Spis zagadnie«sieci przepªywowe przepªywy w sieciach ±cie»ka powi kszaj ca tw. Forda-Fulkersona Znajdowanie maksymalnego przepªywu Zastosowania przepªywów Sieci przepªywowe Sie przepªywowa
Bardziej szczegółowoTeoria grafów i sieci 1 / 188
Teoria grafów i sieci / Drzewa z wagami Drzewem z wagami nazywamy drzewo z korzeniem, w którym do ka»dego li±cia przyporz dkowana jest liczba nieujemna, nazywana wag tego li±cia. / Drzewa z wagami Drzewem
Bardziej szczegółowoNotatki z AiSD. Nr 2. 4 marca 2010 Algorytmy Zachªanne.
Notatki z AiSD. Nr 2. 4 marca 2010 Algorytmy Zachªanne. IIUWr. II rok informatyki. Przygotowaª: Krzysztof Lory± 1 Schemat ogólny. Typowe zadanie rozwi zywane metod zachªann ma charakter optymalizacyjny.
Bardziej szczegółowoLab. 02: Algorytm Schrage
Lab. 02: Algorytm Schrage Andrzej Gnatowski 5 kwietnia 2015 1 Opis zadania Celem zadania laboratoryjnego jest zapoznanie si z jednym z przybli»onych algorytmów sªu» cych do szukania rozwi za«znanego z
Bardziej szczegółowoAlgorytmy i struktury danych
Algorytmy i struktury danych Cz ± druga Prowadz cy: dr Andrzej Mróz, Wydziaª Matematyki i Informatyki, Uniwersytet Mikoªaja Kopernika 1 / 82 Rekurencja Procedura (funkcja) rekurencyjna wywoªuje sam siebie.
Bardziej szczegółowoEgzaminy i inne zadania. Semestr II.
Egzaminy i inne zadania. Semestr II. Poni»sze zadania s wyborem zada«ze Wst pu do Informatyki z egzaminów jakie przeprowadziªem w ci gu ostatnich lat. Ponadto doª czyªem szereg zada«, które pojawiaªy si
Bardziej szczegółowoTeoria grafów i jej zastosowania. 1 / 126
Teoria grafów i jej zastosowania. 1 / 126 Mosty królewieckie W Królewcu, na rzece Pregole znajduj si dwie wyspy poª czone ze sob, a tak»e z brzegami za pomoc siedmiu mostów, tak jak pokazuje rysunek 2
Bardziej szczegółowoRelacj binarn okre±lon w zbiorze X nazywamy podzbiór ϱ X X.
Relacje 1 Relacj n-argumentow nazywamy podzbiór ϱ X 1 X 2... X n. Je±li ϱ X Y jest relacj dwuargumentow (binarn ), to zamiast (x, y) ϱ piszemy xϱy. Relacj binarn okre±lon w zbiorze X nazywamy podzbiór
Bardziej szczegółowoAlgorytmy zwiazane z gramatykami bezkontekstowymi
Algorytmy zwiazane z gramatykami bezkontekstowymi Rozpoznawanie j zyków bezkontekstowych Problem rozpoznawania j zyka L polega na sprawdzaniu przynale»no±ci sªowa wej±ciowego x do L. Zakªadamy,»e j zyk
Bardziej szczegółowoPrzekroje Dedekinda 1
Przekroje Dedekinda 1 O liczbach wymiernych (tj. zbiorze Q) wiemy,»e: 1. zbiór Q jest uporz dkowany relacj mniejszo±ci < ; 2. zbiór liczb wymiernych jest g sty, tzn.: p, q Q : p < q w : p < w < q 3. 2
Bardziej szczegółowoListy i operacje pytania
Listy i operacje pytania Iwona Polak iwona.polak@us.edu.pl Uniwersytet l ski Instytut Informatyki pa¹dziernika 07 Który atrybut NIE wyst puje jako atrybut elementów listy? klucz elementu (key) wska¹nik
Bardziej szczegółowoElementy teorii grafów, sposoby reprezentacji grafów w komputerze
Elementy teorii grafów, sposoby reprezentacji grafów w komputerze Autor projektu: dr Andrzej Mróz (UMK) Projekt pn. Wzmocnienie potencjaªu dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczych
Bardziej szczegółowo12: Znajdowanie najkrótszych ±cie»ek w grafach
12: Znajdowanie najkrótszych ±cie»ek w grafach Spis zagadnie«problem najkrótszych ±cie»ek z jednym ¹ródªem Rozwi zanie sznurkowe kraw dzi Wariant 1: Wariant 2: nieujemne kraw dzie (Dijkstra) Wariant 3:
Bardziej szczegółowoTEORIA GRAFÓW. Graf skierowany dla ka»dej kraw dzi (oznaczanej tutaj jako ªuk) para wierzchoªków incydentnych jest par uporz dkowan {u, v}.
Podstawowe denicje: TEORIA GRAFÓW Graf (nieskierowany) G = (V, E) struktura skªadaj ca si ze: zbioru wierzchoªków V = {,,..., v n } oraz zbioru kraw dzi E = {e 1, e 2,..., e m }. Z ka»d kraw dzi e skojarzona
Bardziej szczegółowoElementy teorii grafów, sposoby reprezentacji grafów w komputerze
Elementy teorii grafów, sposoby reprezentacji grafów w komputerze dr Andrzej Mróz (UMK w Toruniu) 2013 Projekt wspóªnansowany ze ±rodków Unii Europejskiej w ramach Europejskiego Funduszu Spoªecznego Projekt
Bardziej szczegółowoJAO - J zyki, Automaty i Obliczenia - Wykªad 1. JAO - J zyki, Automaty i Obliczenia - Wykªad 1
J zyki formalne i operacje na j zykach J zyki formalne s abstrakcyjnie zbiorami sªów nad alfabetem sko«czonym Σ. J zyk formalny L to opis pewnego problemu decyzyjnego: sªowa to kody instancji (wej±cia)
Bardziej szczegółowoMetoda tablic semantycznych. 1 Metoda tablic semantycznych
1 Zarówno metoda tablic semantycznych, jak i rezolucji, to dosy sprawny algorytm do badania speªnialni±ci formuª, a wi c i tautologii. Chodzi w niej o wskazanie, je±li istnieje, modelu dla formuªy. Opiera
Bardziej szczegółowoGrafy 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ółowoPodziaª pracy. Cz ± II. 1 Tablica sortuj ca. Rozwi zanie
Cz ± II Podziaª pracy 1 Tablica sortuj ca Kolejka priorytetowa to struktura danych udost pniaj ca operacje wstawienia warto±ci i pobrania warto±ci minimalnej. Z kolejki liczb caªkowitych, za po±rednictwem
Bardziej szczegółowoMetodydowodzenia twierdzeń
1 Metodydowodzenia twierdzeń Przez zdanie rozumiemy dowolne stwierdzenie, które jest albo prawdziwe, albo faªszywe (nie mo»e by ono jednocze±nie prawdziwe i faªszywe). Tradycyjnie b dziemy u»ywali maªych
Bardziej szczegółowoc Marcin Sydow Planarno± Grafy i Zastosowania Tw. Eulera 7: Planarno± Inne powierzchnie Dualno± Podsumowanie
7: Spis zagadnie«twierdzenie Kuratowskiego Wªasno±ci planarno±ci Twierdzenie Eulera Grafy na innych powierzchniach Poj cie dualno±ci geometrycznej i abstrakcyjnej Graf Planarny Graf planarny to taki graf,
Bardziej szczegółowoARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15
ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych
Bardziej szczegółowoMosty królewieckie, chi«ski listonosz i... kojarzenie maª»e«stw
Mosty królewieckie, chi«ski listonosz i... kojarzenie maª»e«stw 3 kwietnia 2014 roku 1 / 106 Mosty królewieckie W Królewcu, na rzece Pregole znajduj si dwie wyspy poª czone ze sob, a tak»e z brzegami za
Bardziej szczegółowoGrafy i Zastosowania. 11: Twierdzenia Minimaksowe. c Marcin Sydow. Wst p: Tw. Halla. Dualno± Zbiory niezale»ne. Skojarzenia c.d.
11: Twierdzenia Minimaksowe Spis zagadnie«wst p: Kojarzenie Maª»e«stw i i twierdzenia minimaksowe i pokrycia (Tw. Gallai) w grafach (tw. Berge'a) w grafach dwudzielnych (tw. Königa, ) Pokrycia macierzy
Bardziej szczegółowoi, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski 5 kwietnia 2017
i, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski Uniwersytet Šódzki, Wydziaª Matematyki i Informatyki UŠ piotr@fulmanski.pl http://fulmanski.pl/zajecia/prezentacje/festiwalnauki2017/festiwal_wmii_2017_
Bardziej szczegółowoARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15
ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych
Bardziej szczegółowoAlgorytmy i Struktury Danych
Lista zada«. Nr 4. 9 kwietnia 2016 IIUWr. II rok informatyki. Algorytmy i Struktury Danych 1. (0pkt) Rozwi» wszystkie zadania dodatkowe. 2. (1pkt) Uªó» algorytm znajduj cy najta«sz drog przej±cia przez
Bardziej szczegółowoGrafy. Andrzej Jastrz bski. Akademia ET I. Politechnika Gda«ska
Andrzej Jastrz bski Akademia ET I Graf Grafem nazywamy par G = (V, E), gdzie V to zbiór wierzchoªków, E zbiór kraw dzi taki,»e E {{u, v} : u, v V u v}. Wierzchoªki v, u V s s siaduj ce je±li s poª czone
Bardziej szczegółowoWykªad 4. Funkcje wielu zmiennych.
Wykªad jest prowadzony w oparciu o podr cznik Analiza matematyczna 2. Denicje, twierdzenia, wzory M. Gewerta i Z. Skoczylasa. Wykªad 4. Funkcje wielu zmiennych. Zbiory na pªaszczy¹nie i w przestrzeni.
Bardziej szczegółowoTeoria grafów i sieci 1 / 58
Teoria grafów i sieci 1 / 58 Literatura 1 B.Korte, J.Vygen, Combinatorial optimization 2 D.Jungnickel, Graphs, Networks and Algorithms 3 M.Sysªo, N.Deo Metody optymalizacji dyskretnej z przykªadami w Turbo
Bardziej szczegółowoARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15
ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych
Bardziej szczegółowoO pewnym zadaniu olimpijskim
O pewnym zadaniu olimpijskim Michaª Seweryn, V LO w Krakowie opiekun pracy: dr Jacek Dymel Problem pocz tkowy Na drugim etapie LXII Olimpiady Matematycznej pojawiª si nast puj cy problem: Dla ka»dej liczby
Bardziej szczegółowoANALIZA NUMERYCZNA. Grzegorz Szkibiel. Wiosna 2014/15
ANALIZA NUMERYCZNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Metoda Eulera 3 1.1 zagadnienia brzegowe....................... 3 1.2 Zastosowanie ró»niczki...................... 4 1.3 Output do pliku
Bardziej szczegółowoc Marcin Sydow Grafy i Zastosowania BFS DFS 4: Przeszukiwanie Grafów (BFS, DFS i zastosowania) DFS nieskierowane DFS skierowane Podsumowanie
4: Przeszukiwanie Grafów (, i zastosowania) Spis zagadnie«przeszukiwanie grafów (rola, schemat ogólny, zastosowania) realizacje (kolejka, stos, rekurencja) przeszukiwanie wszerz zastosowania przeszukiwanie
Bardziej szczegółowoEgzaminy i inne zadania. Semestr II.
Egzaminy i inne zadania. Semestr II. Poni»sze zadania s wyborem zada«ze Wst pu do Informatyki z egzaminów jakie przeprowadziªem w ci gu ostatnich lat. Ponadto doª czyªem szereg zada«, które pojawiaªy si
Bardziej szczegółowo1 a + b 1 = 1 a + 1 b 1. (a + b 1)(a + b ab) = ab, (a + b)(a + b ab 1) = 0, (a + b)[a(1 b) + (b 1)] = 0,
XIII Warmi«sko-Mazurskie Zawody Matematyczne. Olsztyn 2015 Rozwi zania zada«dla szkóª ponadgimnazjalnych ZADANIE 1 Zakªadamy,»e a, b 0, 1 i a + b 1. Wykaza,»e z równo±ci wynika,»e a = -b 1 a + b 1 = 1
Bardziej szczegółowoBash i algorytmy. Elwira Wachowicz. 20 lutego
Bash i algorytmy Elwira Wachowicz elwira@ifd.uni.wroc.pl 20 lutego 2012 Elwira Wachowicz (elwira@ifd.uni.wroc.pl) Bash i algorytmy 20 lutego 2012 1 / 16 Inne przydatne polecenia Polecenie Dziaªanie Przykªad
Bardziej szczegółowo1 Metody iteracyjne rozwi zywania równania f(x)=0
1 Metody iteracyjne rozwi zywania równania f()=0 1.1 Metoda bisekcji Zaªó»my,»e funkcja f jest ci gªa w [a 0, b 0 ]. Pierwiastek jest w przedziale [a 0, b 0 ] gdy f(a 0 )f(b 0 ) < 0. (1) Ustalmy f(a 0
Bardziej szczegółowoWST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14
WST P DO TEORII INFORMACJI I KODOWANIA Grzegorz Szkibiel Wiosna 203/4 Spis tre±ci Kodowanie i dekodowanie 4. Kodowanie a szyfrowanie..................... 4.2 Podstawowe poj cia........................
Bardziej szczegółowoRekurencyjne struktury danych
Andrzej Jastrz bski Akademia ETI Dynamiczny przydziaª pami ci Pami, która jest przydzielana na pocz tku dziaªania procesu to: pami programu czyli instrukcje programu pami statyczna zwi zana ze zmiennymi
Bardziej szczegółowo10a: Wprowadzenie do grafów
10a: Wprowadzenie do grafów Spis zagadnie«zastosowania grafów denicja grafu (i skierowanego), prostego, multigrafu drogi i cykle, spójno± w tym sªaba i silna drzewo i las: denicja, charakteryzacje, wªasno±ci
Bardziej szczegółowoDrzewa 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ółowoMetody dowodzenia twierdze«
Metody dowodzenia twierdze«1 Metoda indukcji matematycznej Je±li T (n) jest form zdaniow okre±lon w zbiorze liczb naturalnych, to prawdziwe jest zdanie (T (0) n N (T (n) T (n + 1))) n N T (n). 2 W przypadku
Bardziej szczegółowoX WARMI SKO-MAZURSKIE ZAWODY MATEMATYCZNE 18 maja 2012 (szkoªy ponadgimnazjalne)
X WARMI SKO-MAZURSKIE ZAWODY MATEMATYCZNE 18 maja 2012 (szkoªy ponadgimnazjalne) Zadanie 1 Obecnie u»ywane tablice rejestracyjne wydawane s od 1 maja 2000r. Numery rejestracyjne aut s tworzone ze zbioru
Bardziej szczegółowoc Marcin Sydow Wst p Grafy i Zastosowania Wierzchoªki 8: Kolorowanie Grafów Mapy Kraw dzie Zliczanie Podsumowanie
8: Kolorowanie Grafów Spis zagadnie«kolorowanie wierzchoªków Kolorowanie map Kolorowanie kraw dzi Wielomian chromatyczny Zastosowania Problem kolorowania grafów ma wiele odmian (np. kolorowanie wierzchoªków,
Bardziej szczegółowoARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15
ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych
Bardziej szczegółowoZbiory i odwzorowania
Zbiory i odwzorowania 1 Sposoby okre±lania zbiorów 1) Zbiór wszystkich elementów postaci f(t), gdzie t przebiega zbiór T : {f(t); t T }. 2) Zbiór wszystkich elementów x zbioru X speªniaj cych warunek ϕ(x):
Bardziej szczegółowoWST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14
WST P DO TEORII INFORMACJI I KODOWANIA Grzegorz Szkibiel Wiosna 2013/14 Spis tre±ci 1 Kodowanie i dekodowanie 4 1.1 Kodowanie a szyfrowanie..................... 4 1.2 Podstawowe poj cia........................
Bardziej szczegółowoARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15
ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych
Bardziej szczegółowoCiaªa i wielomiany. 1 Denicja ciaªa. Ciaªa i wielomiany 1
Ciaªa i wielomiany 1 Ciaªa i wielomiany 1 Denicja ciaªa Niech F b dzie zbiorem, i niech + (dodawanie) oraz (mno»enie) b d dziaªaniami na zbiorze F. Denicja. Zbiór F wraz z dziaªaniami + i nazywamy ciaªem,
Bardziej szczegółowoXVII Warmi«sko-Mazurskie Zawody Matematyczne
1 XVII Warmi«sko-Mazurskie Zawody Matematyczne Kategoria: klasa VIII szkoªy podstawowej i III gimnazjum Olsztyn, 16 maja 2019r. Zad. 1. Udowodnij,»e dla dowolnych liczb rzeczywistych x, y, z speªniaj cych
Bardziej szczegółowoMateriaªy do Repetytorium z matematyki
Materiaªy do Repetytorium z matematyki 0/0 Dziaªania na liczbach wymiernych i niewymiernych wiczenie Obliczy + 4 + 4 5. ( + ) ( 4 + 4 5). ( : ) ( : 4) 4 5 6. 7. { [ 7 4 ( 0 7) ] ( } : 5) : 0 75 ( 8) (
Bardziej szczegółowoMaszyny Turinga i problemy nierozstrzygalne. Maszyny Turinga i problemy nierozstrzygalne
Maszyny Turinga Maszyna Turinga jest automatem ta±mowym, skª da si z ta±my (tablicy symboli) potencjalnie niesko«czonej w prawo, zakªadamy,»e w prawie wszystkich (tzn. wszystkich poza sko«czon liczb )
Bardziej szczegółowoWykª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. Denicja Je»eli w grae G istnieje zamkni ta droga prosta zawieraj ca wszystkie kraw dzie
Bardziej szczegółowoW poprzednim odcinku... Podstawy matematyki dla informatyków. Relacje równowa»no±ci. Zbiór (typ) ilorazowy. Klasy abstrakcji
W poprzednim odcinku... Podstawy matematyki dla informatyków Rodzina indeksowana {A t } t T podzbiorów D to taka funkcja A : T P(D),»e A(t) = A t, dla dowolnego t T. Wykªad 3 20 pa¹dziernika 2011 Produkt
Bardziej szczegółowo1 Granice funkcji wielu zmiennych.
AM WNE 008/009. Odpowiedzi do zada«przygotowawczych do czwartego kolokwium. Granice funkcji wielu zmiennych. Zadanie. Zadanie. Pochodne. (a) 0, Granica nie istnieje, (c) Granica nie istnieje, (d) Granica
Bardziej szczegółowoPodstawowepojęciateorii grafów
7 Podstawowepojęciateorii grafów Wiele sytuacji z»ycia codziennego mo»e by w wygodny sposób opisanych gracznie za pomoc rysunków skªadaj cych si ze zbioru punktów i linii ª cz cych pewne pary tych punktów.
Bardziej szczegółowoSzukanie najkrótszych dróg z jednym ródłem
Szukanie najkrótszych dróg z jednym ródłem Algorytm Dijkstry Załoenia: dany jest spójny graf prosty G z wagami na krawdziach waga w(e) dla kadej krawdzi e jest nieujemna dany jest wyróniony wierzchołek
Bardziej szczegółowo1 Klasy. 1.1 Denicja klasy. 1.2 Skªadniki klasy.
1 Klasy. Klasa to inaczej mówi c typ który podobnie jak struktura skªada si z ró»nych typów danych. Tworz c klas programista tworzy nowy typ danych, który mo»e by modelem rzeczywistego obiektu. 1.1 Denicja
Bardziej szczegółowoAlgorytmiczna teoria grafów
18 maja 2013 Twierdzenie Halla o maª»e«stwach Problem Wyobra¹my sobie,»e mamy m dziewczyn i pewn liczb chªopców. Ka»da dziewczyna chce wyj± za m», przy czym ka»da z nich godzi si po±lubi tylko pewnych
Bardziej szczegółowoProgramowanie funkcyjne. Wykªad 13
Programowanie funkcyjne. Wykªad 13 Siªa wyrazu rachunku lambda Zdzisªaw Spªawski Zdzisªaw Spªawski: Programowanie funkcyjne. Wykªad 13, Siªa wyrazu rachunku lambda 1 Wst p Warto±ci logiczne Liczby naturalne
Bardziej szczegółowoKLASYCZNE ZDANIA KATEGORYCZNE. ogólne - orzekaj co± o wszystkich desygnatach podmiotu szczegóªowe - orzekaj co± o niektórych desygnatach podmiotu
➏ Filozoa z elementami logiki Na podstawie wykªadów dra Mariusza Urba«skiego Sylogistyka Przypomnij sobie: stosunki mi dzy zakresami nazw KLASYCZNE ZDANIA KATEGORYCZNE Trzy znaczenia sªowa jest trzy rodzaje
Bardziej szczegółowoPrzykªady problemów optymalizacji kombinatorycznej
Przykªady problemów optymalizacji kombinatorycznej Problem Komiwoja»era (PK) Dane: n liczba miast, n Z +, c ji, i, j {1,..., n}, i j odlegªo± mi dzy miastem i a miastem j, c ji = c ij, c ji R +. Zadanie:
Bardziej szczegółowoA = n. 2. Ka»dy podzbiór zbioru sko«czonego jest zbiorem sko«czonym. Dowody tych twierdze«(elementarne, lecz nieco nu» ce) pominiemy.
Logika i teoria mnogo±ci, konspekt wykªad 12 Teoria mocy, cz ± II Def. 12.1 Ka»demu zbiorowi X przyporz dkowujemy oznaczany symbolem X obiekt zwany liczb kardynaln (lub moc zbioru X) w taki sposób,»e ta
Bardziej szczegółowoPodstawy matematyki dla informatyków
Podstawy matematyki dla informatyków Wykªad 6 10 listopada 2011 W poprzednim odcinku... Zbiory A i B s równoliczne (tej samej mocy ), gdy istnieje bijekcja f : A 1 1 B. Piszemy A B lub A = B. na Moc zbioru
Bardziej szczegółowoProgramowanie wspóªbie»ne
1 Zadanie 1: Bar Programowanie wspóªbie»ne wiczenia 6 monitory cz. 2 Napisz monitor Bar synchronizuj cy prac barmana obsªuguj cego klientów przy kolistym barze z N stoªkami. Ka»dy klient realizuje nast
Bardziej szczegółowoWybrane poj cia i twierdzenia z wykªadu z teorii liczb
Wybrane poj cia i twierdzenia z wykªadu z teorii liczb 1. Podzielno± Przedmiotem bada«teorii liczb s wªasno±ci liczb caªkowitych. Zbiór liczb caªkowitych oznacza b dziemy symbolem Z. Zbiór liczb naturalnych
Bardziej szczegółowoGrafy i Zastosowania. 6: Najkrótsze ±cie»ki. c Marcin Sydow. Najkrótsze cie»ki. Warianty. Relaksacja DAG. Algorytm Dijkstry.
6: ±cie»ki Spis zagadnie«problem najkrótszych ±cie»ek z jednym ¹ródªem Rozwi zanie sznurkowe kraw dzi Wariant 1: Wariant 2: nieujemne kraw dzie (Dijkstra) Wariant 3: dowolny graf () ±cie»ki dla wszystkich
Bardziej szczegółowoAlgorytmy tekstowe. Andrzej Jastrz bski. Akademia ETI
Andrzej Jastrz bski Akademia ETI Wyszukiwanie wzorca Wyszukiwaniem wzorca nazywamy sprawdzenie, czy w podanym tekscie T znajduje si podci g P. Szukamy sªowa kot: Ala ma kota, kot ma ale. Algorytm naiwny
Bardziej szczegółowoc Marcin Sydow Podstawy Grafy i Zastosowania Kod Prüfera 3: Drzewa Drzewa ukorzenione * Drzewa binarne Zastosowania Podsumowanie
Grafy i Grafy i 3: Spis zagadnie«grafy i drzewo i las: denicja, charakteryzacje, wªasno±ci kodowanie Prüfera i zliczanie drzew etykietowanych (tw. Cayleya) drzewa drzewa zliczanie drzew binarnych (tw.
Bardziej szczegółowoAlgorytmy i struktury danych
Algorytmy i struktury danych Cz ± pierwsza Prowadz cy: dr Andrzej Mróz, Wydziaª Matematyki i Informatyki, Uniwersytet Mikoªaja Kopernika 1 / 65 Opis przedmiotu Zagadnienia, którymi si zajmiemy: metody
Bardziej szczegółowoALGORYTMY SORTOWANIA DANYCH
ALGORYTMY SORTOWANIA DANYCH W zagadnieniu sortowania danych rozpatrywa b dziemy n liczb caªkowitych, b d cych pierwotnie w losowej kolejno±ci, które nale»y uporz dkowa nierosn co. Oczywi±cie sortowa mo»emy
Bardziej szczegółowoPROE wykład 7 kontenery tablicowe, listy. dr inż. Jacek Naruniec
PROE wykład 7 kontenery tablicowe, listy dr inż. Jacek Naruniec Prosty kontener oparty na tablicach Funkcja dodawanie pojedynczego słonia do kontenera: 1 2 3 4 5 6 7 11 12 13 14 15 16 17 21 22 23 24 25
Bardziej szczegółowoWykªad 7. Ekstrema lokalne funkcji dwóch zmiennych.
Wykªad jest prowadzony w oparciu o podr cznik Analiza matematyczna 2. Denicje, twierdzenia, wzory M. Gewerta i Z. Skoczylasa. Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych. Denicja Mówimy,»e funkcja
Bardziej szczegółowoProgramowanie wspóªbie»ne
1 Programowanie wspóªbie»ne wiczenia 5 monitory cz. 1 Zadanie 1: Stolik dwuosobowy raz jeszcze W systemie dziaªa N par procesów. Procesy z pary s nierozró»nialne. Ka»dy proces cyklicznie wykonuje wªasnesprawy,
Bardziej szczegółowoistnienie elementu neutralnego dodawania (zera): 0 K a K a + 0 = a, istnienie elementu neutralnego mno»enia (jedynki): 1 K a K a 1 = a,
Ciaªo Denicja. Zbiór K z dziaªaniami dodawania + oraz mno»enia (których argumentami s dwa elementy z tego zbioru, a warto±ciami elementy z tego zbioru) nazywamy ciaªem, je±li zawiera co najmniej dwa elementy
Bardziej szczegółowoLekcja 8 - ANIMACJA. 1 Polecenia. 2 Typy animacji. 3 Pierwsza animacja - Mrugaj ca twarz
Lekcja 8 - ANIMACJA 1 Polecenia Za pomoc Baltiego mo»emy tworzy animacj, tzn. sprawia by obraz na ekranie wygl daª jakby si poruszaª. Do animowania przedmiotów i tworzenia animacji posªu» nam polecenia
Bardziej szczegółowoWykªad 1. Wprowadzenie do teorii grafów
Wykªad 1. Wprowadzenie do teorii grafów 1 / 112 Literatura 1 W. Lipski; Kombinatoryka dla programistów. 2 T. Cormen, Ch. E. Leiserson, R. L. Rivest; Wprowadzenie do algorytmów. 3 K. A. Ross, Ch. R. B.
Bardziej szczegółowoIndeksowane rodziny zbiorów
Logika i teoria mnogo±ci, konspekt wykªad 7 Indeksowane rodziny zbiorów Niech X b dzie przestrzeni zbiorem, którego podzbiorami b d wszystkie rozpatrywane zbiory, R rodzin wszystkich podzbiorów X za± T
Bardziej szczegółowoProgramowanie i struktury danych 1 / 44
Programowanie i struktury danych 1 / 44 Lista dwukierunkowa Lista dwukierunkowa to liniowa struktura danych skªadaj ca si z ci gu elementów, z których ka»dy pami ta swojego nast pnika i poprzednika. Operacje
Bardziej szczegółowoInterpolacja funkcjami sklejanymi
Interpolacja funkcjami sklejanymi Funkcje sklejane: Zaªó»my,»e mamy n + 1 w zªów t 0, t 1,, t n takich,»e t 0 < t 1 < < t n Dla danej liczby caªkowitej, nieujemnej k funkcj sklejan stopnia k nazywamy tak
Bardziej szczegółowoZofia 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ółowoWyszukiwanie. Algorytmy i Struktury Danych. (c) Marcin Sydow. Dziel i rz d¹. Wyszukiwanie. Statystyki pozycyjne. Podsumowanie
Zawarto± tego wykªadu: reguªa dziel i rz d¹ wyszukiwanie algorytm wyszukiwania binarnego statystyki 2. najmniejsza warto± w ci gu (algorytm turniejowy - idea) algorytm (wyszukiwanie k-tej statystyki j)
Bardziej szczegółowoRozwi zania klasycznych problemów w Rendezvous
Cz ± I Rozwi zania klasycznych problemów w Rendezvous 1 Producenci i konsumenci Na pocz tek rozwa»my wersj z jednym producentem i jednym konsumentem, dziaªaj cymi w niesko«czonych p tlach. Mechanizm komunikacji
Bardziej szczegółowoARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15
ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych
Bardziej szczegółowoProblemy optymalizacyjne - zastosowania
Problemy optymalizacyjne - zastosowania www.qed.pl/ai/nai2003 PLAN WYKŁADU Zło ono obliczeniowa - przypomnienie Problemy NP-zupełne klika jest NP-trudna inne problemy NP-trudne Inne zadania optymalizacyjne
Bardziej szczegółowoRozwi zanie równania ró»niczkowego metod operatorow (zastosowanie transformaty Laplace'a).
Rozwi zania zada«z egzaminu podstawowego z Analizy matematycznej 2.3A (24/5). Rozwi zanie równania ró»niczkowego metod operatorow (zastosowanie transformaty Laplace'a). Zadanie P/4. Metod operatorow rozwi
Bardziej szczegółowoTemat: Problem najkrótszych cieek w grafach waonych, cz. I: Algorytmy typu label - setting.
Temat: Problem najkrótszych cieek w grafach waonych, cz. I: Algorytmy typu label - setting.. Oznaczenia i załoenia Oznaczenia G = - graf skierowany z funkcj wagi s wierzchołek ródłowy t wierzchołek
Bardziej szczegółowo