Algorytmy i Struktury Danych.

Podobne dokumenty
Grafy hamiltonowskie, problem komiwojażera algorytm optymalny

Prezentacja kierunków pracy naukowej

Grafy hamiltonowskie, problem komiwojaera algorytm optymalny

Algorytmy i Struktury Danych, Rozwiązania zadań z kolokwiów

Instrukcje dotyczące systemu Windows w przypadku drukarki podłączonej lokalnie

Klasa problemów #P. Paweł Gora 11/20/2008 1

PROJEKT: Technologie multimedialne drogą do przyjaznej edukacji przyszłości realizowany w Szkole Podstawowej nr 11 w Będzinie

Semantyka i Weryfikacja Programów - Laboratorium 2 Działania na ułamkach, krotki i rekordy

ELEMENTY PROSTOKĄTNE Informacje techniczne 1 Kanały 2 Kolana 3 Trójniki 5 Odsadzki Czwórniki 7 Przejścia 8 ELEMENTY DACHOWE Podstawy dachowe 9

Regionalne Koło Matematyczne

Minimalizacja automatu

1.1. Układy do zamiany kodów (dekodery, kodery, enkodery) i

2. Regulamin uchwala Rada Nadzorcza na podstawie 69 Statutu Spółdzielni Mieszkaniowej Arka we Wrocławiu.

ROZPORZĄDZENIE PARLAMENTU EUROPEJSKIEGO I RADY (WE) NR 1223/2009 z dnia 30 listopada 2009 r. dotyczące produktów kosmetycznych

Ankieta absolwenta ANKIETA ABSOLWENTA. Losy zawodowe absolwentów PWSZ w Raciborzu

PODSTAWY BAZ DANYCH Wykład 3 2. Pojęcie Relacyjnej Bazy Danych

Co można zrobić za pomocą maszyny Turinga? Wszystko! Maszyna Turinga potrafi rozwiązać każdy efektywnie rozwiązywalny problem algorytmiczny!

G i m n a z j a l i s t ó w

Podsumowanie wyników ankiet dotyczących żywienia w sklepikach szkolnych.

5. WYKORZYSTANIE GRAFÓW PRZEPŁYWU SYGNAŁÓW DO BUDOWY MODELI MATEMATYCZNYCH

Obozy Naukowe OMG poziom OMG Perzanowo

Kolokwium II GRUPA A. Przy ka»dym z podpunktów wpisz, czy jest on prawdziwy (TAK) czy faªszywy (NIE).

Stereochemia. Izomeria konformacyjna obrót wokół wiązania pojedynczego etan projekcja Newmana

Załącznik nr 2 LISTA SPRAWDZAJĄCA DO WERYFIKACJI ADMINISTRACYJNEJ WNIOSKU O PŁATNOŚĆ

WYZNACZANIE OGNISKOWEJ SOCZEWEK CIENKICH ZA POMOCĄ ŁAWY OPTYCZNEJ

Ć W I C Z E N I E N R E-14

ZADANIE I OPIS PRZEDMIOTU ZAMÓWENIA SPECYFIKACJA TECHNICZNA (OPIS) OFEROWANEGO SPRZĘTU

Materiały tylko do użytku wewnętrznego PZU SA. ankieta HOSPI

Algebra Boola i podstawy systemów liczbowych. Ćwiczenia z Teorii Układów Logicznych, dr inż. Ernest Jamro. 1. System dwójkowy reprezentacja binarna

2. Funktory TTL cz.2

Wynik bezpośredniego spotkania między zainteresowanymi drużynami w przypadku 3 lub więcej drużyn tworzona jest małą tabele

ANALIZA PRACY SYSTEMU ENERGETYCZNO-NAPĘDOWEGO STATKU TYPU OFFSHORE Z WYKORZYSTANIEM METODY DRZEW USZKODZEŃ

Wyk lad 1 Podstawowe wiadomości o macierzach

51. Ogólnopolski Konkurs Chemiczny im. A. Swinarskiego

f(x)dx (1.7) b f(x)dx = F (x) = F (b) F (a) (1.2)

Przykład 2.6. Przekrój złożony z trzech kształtowników walcowanych.

Wykªad 8. Pochodna kierunkowa.

Sieæ szpitalnych koordynatorów pobierania narz¹dów w Polsce w 2011 r.

Automatyka i Robotyka Analiza Wykład 23 dr Adam Ćmiel

Programy współbieżne

Rys Wyrównanie spostrzeżeń zawarunkowanych jednakowo dokładnych C. KRAKOWIANY

Gr. 100 i 125 mm INSTRUKCJA MONTA U KASETY. c f e. h g d. Systemy przesuwne do drzwi. System do œciany karton-gips

NACIONALINIS EGZAMINŲ CENTRAS

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

Komisja Egzaminacyjna dla Aktuariuszy LIX Egzamin dla Aktuariuszy z 12 marca 2012 r. Część I Matematyka finansowa

Sieæ koordynatorów pobierania i przeszczepiania narz¹dów w Polsce w 2013 r.

Środowisko życia i zdrowie - edukacja ekologiczna

Przepisy Hokeja na Trawie Hala

%%'!)%'targzip gunzipcompressuncompressdiffpatch* %!+%,-./! Nazwy programów, polece, katalogów, wyniki działania wydawanych polece.

Autor prof. dr hab. inż. Marian Mokwa. Opiniodawca dr hab. inż. Jarosław Mirski, prof. nadzw.

Arkusz 1 - karta pracy Całka oznaczona i jej zastosowania. Całka niewłaściwa

Rozwiązania maj 2017r. Zadania zamknięte

INSTRUKCJA. - Jak rozwiązywać zadania wysoko punktowane?

< f g = fg. f = e t f = e t. U nas: e t (α 1)t α 2 dt = 0 + (α 1)Γ(α 1)

Algorytmy i struktury danych

Egzamin dla Aktuariuszy z 15 marca 2010 r. Matematyka Finansowa

KONKURS MATEMATYCZNY dla uczniów gimnazjów w roku szkolnym 2012/13. Propozycja punktowania rozwiązań zadań

WPŁYW DODATKU PRODUKTÓW Z AMARANTUSA NA CECHY TEKSTURY MIĘKISZU PIECZYWA

WYZNACZNIKI. . Gdybyśmy rozważali układ dwóch równań liniowych, powiedzmy: Takie układy w matematyce nazywa się macierzami. Przyjmijmy definicję:

Wkłady atramentowe dostarczone z urządzeniem. Płyta instalacyjna CD-ROM Płyta CD-ROM z dokumentacją

N(0, 1) ) = φ( 0, 3) = 1 φ(0, 3) = 1 0, 6179 = 0, 3821 < t α 1 e t dt α > 0. f g = fg. f = e t f = e t. U nas: g = t α 1 g = (α 1)t α 2

4.5 Deterministyczne i zupełne automaty Moore a i Mealy ego

Matematyka finansowa r. Komisja Egzaminacyjna dla Aktuariuszy. LXVI Egzamin dla Aktuariuszy z 10 marca 2014 r. Część I

Wykład 2. Granice, ciągłość, pochodna funkcji i jej interpretacja geometryczna

Metoda prądów obwodowych

a a a ; ; ; (1.2) przez [ a ij ], czyli zbiór elementów w i-tym wierszu i w j-tej kolumnie. Wymiary ( n m) stanowią stopień macierzy.

RÓWNOWAGA CHEMICZNA. Reakcje chemiczne: nieodwracalne ( praktycznie nieodwracalne???) reakcje wybuchowe, np. wybuch nitrogliceryny: 2 C H 2

4.3. Przekształcenia automatów skończonych

Komisja Egzaminacyjna dla Aktuariuszy LII Egzamin dla Aktuariuszy z 15 marca 2010 r. Część I Matematyka finansowa

12. CZWÓRNIKI PARAMETRY ROBOCZE I FALOWE CZWÓRNIK U

ANALIZA FOURIEROWSKA szybkie transformaty Fouriera

a) b) Rys Schemat ideowo-konstrukcyjny układu do przykładu 6.1 a) i jego schemat blokowy

4.6. Gramatyki regularne




Zadania. I. Podzielność liczb całkowitych

Powiatowy Urząd Pracy ul. Andersa Legnica MONITORING ZAWODÓW DEFICYTOWYCH I NADWYŻKOWYCH W POWIECIE LEGNICKIM W 2009 ROKU

RBD Relacyjne Bazy Danych

2 Criminal records. Vocabulary. burglary. Crimes. Criminals

5. Zadania tekstowe.

Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego. best in training PRE TEST

REGULAMIN PSKO I. Kryteria i wymagania dla zawodników Optimist PSKO. II. Mistrzostwa PSKO. III. Puchar Polski PSKO

Wektor kolumnowy m wymiarowy macierz prostokątna o wymiarze n=1 Wektor wierszowy n wymiarowy macierz prostokątna o wymiarze m=1

POMIARY GPS/IMU, A WYZNACZANIE ELEMENTÓW ORIENTACJI ZEWNĘTRZNEJ

Wykład 9: Różne rodzaje zbieżności ciągów zmiennych losowych. Prawa wielkich liczb.

i na matematycznej wyspie materiały dla ucznia, pakiet 89, s. KARTA:... Z KLASY:...

Mikroekonomia II. Teoria konsumenta - zadania dodatkowe. w której mamy 20 konsumentów, chcacych. kupić samochody, o 5 typach, charakteryzujacych

Planimetria czworokąty

Macierzy rzadkie symetryczne

WYZNACZANIE OGNISKOWEJ SOCZEWEK CIENKICH ZA POMOCĄ ŁAWY OPTYCZNEJ

Rachunek prawdopodobieństwa i statystyka matematyczna.

Kombinowanie o nieskończoności. 4. Jak zmierzyć?

H. Dąbrowski, W. Rożek Próbna matura, grudzień 2014 r. CKE poziom rozszerzony 1. Zadanie 15 różne sposoby jego rozwiązania

Ę

Oddziaływania słabe. Bozony pośredniczące W i Z. Sprzężenia leptonowe. Sprzężenia kwarkowe - mieszanie kwarków. D. Kiełczewska, wykład 5

69 b. 82a. 82b e f. d a g. 82b b 30 a a 97R 98R 98L

Technika Cyfrowa 1. Wykład 5: Synteza automatów sekwencyjnych III UKŁADY SEKWENCYJNE C.D.

Acta Agrophysica, 2013, 20(4),

Instrukcje dla zawodników

Transkrypt:

Algorytmy i Struktury Dnyh. Gry. Drzwo rozpinj. Minimln rzwo rozpinj. Bożn Woźn-Szzśnik wozn@gmil.om Jn Długosz Univrsity, Poln Wykł 9 Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 1 / 4

Pln wykłu Drzwo rozpinj Algorytm Kruskl Algorytm Prim Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 / 4

Drzwo rozpinj gru Dinij Drzwm rozpinjym gru G nzywmy spójny i yklizny pogr gru G zwirjy wszystki jgo wirzhołki. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 3 / 4

Drzwo rozpinj gru Dinij Drzwm rozpinjym gru G nzywmy spójny i yklizny pogr gru G zwirjy wszystki jgo wirzhołki. Twirzni Kży gr spójny zwir rzwo rozpinj. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 3 / 4

Drzwo rozpinj gru Dinij Drzwm rozpinjym gru G nzywmy spójny i yklizny pogr gru G zwirjy wszystki jgo wirzhołki. Twirzni Kży gr spójny zwir rzwo rozpinj. Twirzni W gri spójnym G = (V, E) krwęź E jst krwęzi ięi wty i tylko wty, gy nlży o kżgo rzw rozpinjgo gru G. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 3 / 4

Drzwo rozpinj gru Gnrowni rzw rozpinjgo ngo gru spójngo G możn rlizowć ior koljno krwęzi z pwnj listy i kptuj j po sprwzniu, zy ni tworz on yklu z otyhzs zkptownymi krwęzimi. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 4 / 4

Drzwo rozpinj gru Gnrowni rzw rozpinjgo ngo gru spójngo G możn rlizowć ior koljno krwęzi z pwnj listy i kptuj j po sprwzniu, zy ni tworz on yklu z otyhzs zkptownymi krwęzimi. Gnrowni wszystkih rzw rozpinjyh ngo gru jst złożon olizniowo, poniwż rzw rozpinjyh moż yć rzo użo. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 4 / 4

Drzwo rozpinj gru - przykł Pokżmy, ż gr tn zwir 8 różnyh rzw rozpinjyh. v4 v3 v Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 5 / 4

Drzwo rozpinj gru - przykł v4 v3 v Pokżmy, ż gr tn zwir 8 różnyh rzw rozpinjyh. Łtwo zuwżyć, ż kż rzwo rozpinj tgo gru m 3 krwęzi. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 5 / 4

Drzwo rozpinj gru - przykł v4 v3 v Pokżmy, ż gr tn zwir 8 różnyh rzw rozpinjyh. Łtwo zuwżyć, ż kż rzwo rozpinj tgo gru m 3 krwęzi. Uporzkujmy wszystki krwęzi gru, tworz listę krwęzi. Rozwżć ęzimy nstępuj listę krwęzi: (,,,, ). Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 5 / 4

Drzwo rozpinj gru - przykł v4 v3 v Pokżmy, ż gr tn zwir 8 różnyh rzw rozpinjyh. Łtwo zuwżyć, ż kż rzwo rozpinj tgo gru m 3 krwęzi. Uporzkujmy wszystki krwęzi gru, tworz listę krwęzi. Rozwżć ęzimy nstępuj listę krwęzi: (,,,, ). Kży poziór krwęzi ęzimy przstwić w posti listy uporzkownj, zgoni z porzkim w liśi krwęzi; Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 5 / 4

Drzwo rozpinj gru - przykł Do gnrowni wszystkih rzw rozpinjyh zstosujmy lgorytm z nwrotmi. (,,,, ) v4 v3 v Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 6 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Do gnrowni wszystkih rzw rozpinjyh zstosujmy lgorytm z nwrotmi. Zgoni z lgorytmm z nwrotmi, ęzimy tworzyć koljn listy. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 6 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Do gnrowni wszystkih rzw rozpinjyh zstosujmy lgorytm z nwrotmi. Zgoni z lgorytmm z nwrotmi, ęzimy tworzyć koljn listy. list zrwon oznz, ż krwęzi t zwirj ykl i trz się wyoć. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 6 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Do gnrowni wszystkih rzw rozpinjyh zstosujmy lgorytm z nwrotmi. Zgoni z lgorytmm z nwrotmi, ęzimy tworzyć koljn listy. list zrwon oznz, ż krwęzi t zwirj ykl i trz się wyoć. list pokrślon oznzj rzwo rozpinj. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 6 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Do gnrowni wszystkih rzw rozpinjyh zstosujmy lgorytm z nwrotmi. Zgoni z lgorytmm z nwrotmi, ęzimy tworzyć koljn listy. list zrwon oznz, ż krwęzi t zwirj ykl i trz się wyoć. list pokrślon oznzj rzwo rozpinj. Listy (rzw) gnrown s w porzku lksykogriznym (ltyznym). Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 6 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 (), (), (, ), (,, ) Mmy pirwsz rzwo rozpinj. v Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 7 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v (), (), (, ), (,, ) Mmy pirwsz rzwo rozpinj. Usuwmy osttni krwęź z (,, ), ojmy koljn krwęź z listy i otrzymujmy: (,, ) - zwir ykl. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 7 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v (), (), (, ), (,, ) Mmy pirwsz rzwo rozpinj. Usuwmy osttni krwęź z (,, ), ojmy koljn krwęź z listy i otrzymujmy: (,, ) - zwir ykl. Usuwmy ztm i gnrujmy nstępn listę: (,, ) Otrzymliśmy rugi rzwo rozpinj. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 7 / 4

Drzwo rozpinj gru - przykł Usuwmy krwęź, ni możmy (,,,, ) jnk kontynuowć o jst osttni krwęzi n liśi. v4 v3 v Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 8 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Usuwmy krwęź, ni możmy jnk kontynuowć o jst osttni krwęzi n liśi. Usuwmy koljn krwęź - i gnrujmy: (, ), (,, ). Mmy koljn rzwo rozpinj. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 8 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Usuwmy krwęź, ni możmy jnk kontynuowć o jst osttni krwęzi n liśi. Usuwmy koljn krwęź - i gnrujmy: (, ), (,, ). Mmy koljn rzwo rozpinj. Usuwmy osttni krwęź i kontynuujmy: (,, ). Znlźliśmy koljn rzwo rozpinj. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 8 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Usuwmy krwęź, nstępni krwęź, po zym gnrujmy koljno: (, ), (,, ). Mmy koljn rzwo rozpinj. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 9 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Usuwmy krwęź, nstępni krwęź, po zym gnrujmy koljno: (, ), (,, ). Mmy koljn rzwo rozpinj. Usuwmy krwęź, potm tworzymy now listę: (, ). Ni możmy jnk kontynuowć wię usuwmy krwęzi orz. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 9 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Usuwmy krwęź, nstępni krwęź, po zym gnrujmy koljno: (, ), (,, ). Mmy koljn rzwo rozpinj. Usuwmy krwęź, potm tworzymy now listę: (, ). Ni możmy jnk kontynuowć wię usuwmy krwęzi orz. Koljnymi utworzonymi listmi s wię: (), (, ), (,, ). Otrzymliśmy koljn rzwo rozpinj. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 9 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Usuwmy krwęź, l koljn list: (,, ) zwir ykl. Usuwmy wię koljno krwęź, potm i gnrujmy listy (, ) i (,, ). Znlźliśmy koljn rzwo rozpinj. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 10 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Usuwmy krwęź, l koljn list: (,, ) zwir ykl. Usuwmy wię koljno krwęź, potm i gnrujmy listy (, ) i (,, ). Znlźliśmy koljn rzwo rozpinj. Usuwmy koljno krwęzi i koljn list jst: (, ). Usuwmy, nstępni i tworzymy listy: (), (, ), (,, ). Mmy koljn rzwo rozpinj. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 10 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Usuwmy krwęź, l koljn list: (,, ) zwir ykl. Usuwmy wię koljno krwęź, potm i gnrujmy listy (, ) i (,, ). Znlźliśmy koljn rzwo rozpinj. Usuwmy koljno krwęzi i koljn list jst: (, ). Usuwmy, nstępni i tworzymy listy: (), (, ), (,, ). Mmy koljn rzwo rozpinj. Usuwmy koljno i, nstępni gnrujmy ls (, ). Usuwmy, nstępni i gnrujmy koljn listy: (), (, ), (). Ni m już jnk więj rzw rozpinjyh. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 10 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Usuwmy koljno krwęzi i, koljn list jst: (, ). Usuwmy, nstępni i tworzymy listy: (), (, ), (,, ). Mmy koljn rzwo rozpinj. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 11 / 4

Drzwo rozpinj gru - przykł (,,,, ) v4 v3 v Usuwmy koljno krwęzi i, koljn list jst: (, ). Usuwmy, nstępni i tworzymy listy: (), (, ), (,, ). Mmy koljn rzwo rozpinj. Usuwmy koljno i, nstępni gnrujmy ls (, ). Usuwmy, nstępni i gnrujmy koljn listy: (), (, ), (). Ni m już jnk więj rzw rozpinjyh. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 11 / 4

Drzwo rozpinj gru - przykł v4 v3 v Drzw rozpinj v4 v3 v4 v3 v4 v3 v4 v3 v v v v (,,) (,,) (,,) (,,) v4 v3 v4 v3 v4 v3 v4 v3 v v v v (,,) (,,) (,,) (,,) Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 1 / 4

Gnrowni rzw rozpinjyh gru - złożni Kżmu wirzhołkowi gru przyporzkujmy w tryuty: Korzn[r] - tzw. korzń rzw, w którym znjuj się wirzhołk r. Poprznik[v] - poprznik wirzhołk v n jynj śiż łz j v z korznim. Poprznik korzni jst niokrślony; w lgorytmh zkłmy, ż jst równy 0 lu NIL. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 13 / 4

Złożni - przykł i g j h k Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 14 / 4

Złożni - przykł (g, ) (g, g) (g, ) i (g, g) (g, NIL) (g, g) (g, ) g (g, g) (g, ) j (g, g) h (g, ) k Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 15 / 4

Gnrowni rzw rozpinjyh gru - i Pros gnrowni wszystkih rzw rozpinjyh wymg wóh oprji: Jżli koljn krwęź z listy ni zmyk yklu (jst zkptown), to oni jj powouj połzni wóh rzw T 1 i T w jno now rzwo T i w zwizku z tym nlży okonć opowinij zminy tykit wirzhołków T (Prour A i B). Po otrzymniu rzw rozpinjgo lu wyzrpniu się listy krwęzi w prosi gnrowni rzw, wykonujmy krok powrotu polgjy n wyrzuniu osttnio onj krwęzi. Powouj to rozii pwngo rzw T n w porzw T 1 i T (Prour C). Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 16 / 4

Prour A - psuoko Zmin tykit wirzhołków rzw T o korzniu r, po oprji zminy r n nowy korzń v. Algorytm NowyKorzń(v): 1: StryKorzn := Korzn[v] : i StryKorzn = v thn 3: rturn; 4: n i 5: := 0; v := v; 6: rpt 7: p := ; := v; v := Poprznik[]; Poprznik[] := p; 8: until = StryKorzn 9: or h w V o 10: i Korzn[w] = StryKorzn thn 11: Korzn[w] = v; 1: n i 13: n or Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 17 / 4

Prour A - przykł oprj zminy korzni g n nowy korzń i. (g, ) (g, g) (g, ) (g, ) (g, g) (g, ) i i (g, g) (g, NIL) (g, g) (g, ) (g, g) (g, NIL) (g, g) (g, ) g g (g, g) (g, ) (g, g) (g, ) j (g, g) h j (g, g) h (g, ) (g, ) k k Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 18 / 4

Prour A - przykł,. zminimy skirowni krwęzi n śiż z g o i. zminimy rugi tykity wirzhołków ( i) tj śiżki. Etykity pozostłyh wirzhołków w rzwi T pozostj z zmin. (g, ) (g, g) (g, ) (g, ) (g, g) (g, ) i i (g, g) (g, NIL) (g, g) (g, ) (g, g) (g, ) (g, i) (g, ) g g (g, g) (g, ) (g, g) (g, ) j (g, g) h j (g, g) h (g, ) (g, ) k k Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 19 / 4

Prour A - przykł,. Wszystki wirzhołki rzw T otrzymuj pirwsz tykitę (okrślj korzń) równ i, wirzhołk i ostj rug tykitę posti (i, NIL). (g, ) (g, g) (g, ) (i, ) (i, g) (i, NIL) i i (g, g) g (g, NIL) (g, g) (g, ) (i, g) g (i, ) (i, i) (i, ) j (g, g) (g, g) h (g, ) j (i, g) (i, g) h (i, ) (g, ) (i, ) k k Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 0 / 4

Prour B - psuoko Zmini tykity wirzhołków wóh rzw T 1 i T, o korznih opowinio r1 i r, r1 < r, po oprji ih połzni przz oni krwęzi = (u, v), gzi u V(T 1), v V(T ). Algorytm DojKrwęź ( = (u, v)): 1: := Korzn[u]; v := Korzn[v]; : i v < thn 3: zmin(, v); zmin(u, v); 4: n i 5: NowyKorzn(v); 6: Poprznik[v] := u; 7: or h w V o 8: i Korzn[w] = v thn 9: Korzn[w] = ; 10: n i 11: n or Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 1 / 4

Prour B - Przykł Połzni wóh rzw T 1 i T, o korznih opowinio i m, przz oni krwęzi = (g, ), gzi g V(T 1), V(T ). (, ) (, NIL) (m, ) (m, NIL) (, ) (, NIL) (m, ) (m, NIL) i m i m (, g) (, ) (m, ) (m, m) (, g) (, ) (m, ) (m, m) g g (, g) (m, ) (, g) (m, ) j h j h (, g) (, ) (, g) (, ) k k Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 / 4

Prour B - Przykł,. wirzhołkom w rzwi T zminimy rugi tykity tk jk przy zmini korzni z m n (Prour A); w rzwi T1 rugi tykity wirzhołków pozostj z zmin. (, ) (, NIL) (m, ) (m, NIL) (, ) (, NIL) (, ) (, ) i m i m (, g) (, ) (m, ) (m, m) (, g) (, ) (, NIL) (, ) g g (, g) (m, ) (, g) (, ) j h j h (, g) (, ) (, g) (, ) k k Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 3 / 4

Prour B - Przykł,. wirzhołkowi jko rug tykitę przypisujmy g. wszystki wirzhołki rzw T otrzymuj pirwsz tykitę równ ; w rzwi T1 pirwsz tykity wirzhołków pozostj z zmin. (, ) (, NIL) (, ) (, ) (, ) (, NIL) (, ) (, ) i m i m (, g) (, ) (, NIL) (, ) (, g) (, ) (, g) (, ) g g (, g) (, ) (, g) (, ) j h j h (, g) (, ) (, g) (, ) k k Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 4 / 4

Prour C - psuoko Zmini tykit wirzhołków rzw T o korzniu r po usunięiu z nigo krwęzi = (u, v), zyli roziiu T n w rzw T 1 i T, gzi u V(T 1), v V(T ) i r V(T 1). UWAGA! W nszym przypku zwsz usuwmy osttnio on krwęź, wię wirzhołk u jst wirzhołkim wiszym i po usunięiu krwęzi stni się rzwm trywilnym (jnowirzhołkowym). Ztm pros usunięi krwęzi polg jyni n zmini tryutów wirzhołk u. Rlizuj to lgorytm UsuńKrwęź. Algorytm UsuńKrwęź(=(u,v)): 1: i Poprznik[u] = v thn : zmin(u, v) 3: n i 4: Poprznik[v] := 0; 5: Korzn[v] = v; Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 5 / 4

Prour C - Przykł W rzwi T 1 oi tykity wirzhołków pozostj z zmin. Wirzhołkowi przypisujmy tykitę (, 0) (stj się korznim rzw T ). Drugi tykity pozostłyh wirzhołków w rzwi T pozostj z zmin, l otrzymuj pirwsz tykitę równ. (, ) (, NIL) (, ) (, ) (, ) (, NIL) (, ) (, ) i m i m (, g) (, ) (, g) (, ) (, g) (, ) (, NIL) (, ) g g (, g) (, ) (, g) (, ) j h j h (, g) (, ) (, g) (, ) k k Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 6 / 4

Prour C - Przykł,. Usunięi krwęzi (g, ). (, ) (, NIL) (, ) (, ) (, ) (, NIL) (, ) (, ) i m i m (, g) (, ) (, NIL) (, ) (, g) (, ) (, NIL) (, ) g g (, g) (, ) (, g) (, ) j h j h (, g) (, ) (, g) (, ) k k Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 7 / 4

Algorytm gnrowni wszystkih rzw rozpinjyh gru Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 8 / 4

Znlźć wszystki rzw rozpięt gru v3 v4 g v5,,,,,, g,, g, g, g,,,,, g,,, g,, g, g,,,, g,, g, g,, g, g,, g, g, v,,,,, g,,, g,, g, g,,,, g,, g, g,,, g, g,, g, g,. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 9 / 4

Drzw rozpinj o minimlnj wz Jżli mmy o zynini z grm z wgmi, to njzęśij intrsuj ns znlzini rzw rozpinjgo o minimlnj wz, tzn., rzw z njmnijsz sum wg jgo krwęzi. Ay znlźć rzwo o żnyh włsnośih możn zstosowć w lgorytmy: Kruskl (lgorytm zhłnny) Prim (lgorytm njliższgo ssi). Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 30 / 4

Algorytmy Kruskl Algorytm jst oprty o mtoę zhłnn i polg n łzniu wilu porzw w jno z pomo krwęzi o njmnijszj wz. Wyirz krwęź (któr ni jst pętl) 1 tk, y wg tj krwęzi ył njmnijsz. Jżli krwęzi 1,,..., k zostły już wyrn, to z pozostłyh E \{ 1,,..., k } wyirz krwęź k+1 w tki sposó y: gr, który skł się tylko z krwęzi 1,,..., k, k+1 ył yklizny, orz wg krwęzi k+1 ył njmnijsz. Jśli ni możn wykonć kroku, to STOP. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 31 / 4

Algorytm Kruskl - Złożoność olizniow Algorytm możn pozilić n w tpy: w pirwszym tpi sortujmy krwęzi wług wg w zsi O(m log(m)). w rugim tpi uujmy rozpięt rzwo poprzz wyór njkrótszyh krwęzi z zioru krwęzi E(G); tn tp możn wykonć w zsi O(m log(n)). Sumryzny zs pry lgorytmu Kruskl wynosi: O(m log(n)) Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 3 / 4

Algorytm Kruskl - Przykł 4 1 8 7 3 6 Po posortowniu krwęzi wg. wg otrzymujmy: =1, =, =, =, =3, =4, =6, =7, =8 Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 33 / 4

Algorytm Kruskl - Przykł Krok 1. 4 8 3 1 7 6 Krok. 4 8 3 1 7 6 Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 34 / 4

Algorytm Kruskl - Przykł Krok 3. 4 8 3 1 7 6 Krok 4 - slni. 4 8 3 1 7 6 Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 35 / 4

Algorytm Kruskl - Przykł Krok 5. 4 1 7 6 3 8 Minimln rzwo. 1 3 Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 36 / 4

Algorytm Prim Algorytm tn jst, pooni jk lgorytm Kruskl oprty o mtoę zhłnn. Buowę minimlngo rzw rozpinjgo zzynmy o owolngo wirzhołk, np. o pirwszgo. Dojmy wirzhołk o rzw, wszystki krwęzi inyntn umiszzmy n posortownj wg. wg liśi. Nstępni zjmujmy z listy pirwszy lmnt (o njmnijszj wz) i jżli wirzhołk, który łzy ni nlży o rzw, ojmy go o rzw n liśi znów umiszzmy wszystki krwęzi inyntn z wirzhołkim, który oliśmy. Jnym znim: zwsz ojmy o rzw krwęź o njmnijszj wz, osigln (w prziwiństwi o Kruskl) z jkigoś wirzhołk tgo rzw. Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 37 / 4

Algorytm Prim - Przykł 4 7 1 3 8 6 Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 38 / 4

Algorytm Prim - Przykł Krok 1. 4 8 3 1 7 6 Krok. 4 8 3 1 7 6 Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 39 / 4

Algorytm Prim - Przykł Krok 3. 4 8 3 1 7 6 Krok 4 4 8 3 1 7 6 Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 40 / 4

Algorytm Prim - Przykł Krok 5. 4 1 7 6 3 8 Minimln Drzwo 1 3 Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 41 / 4

Algorytm Prim Algorytm Kruskl - Przykł Minimln Drzwo wg. Algorytmu Kruskl. Minimln Drzwo wg. Algorytmu Prim 1 3 1 3 Bożn Woźn-Szzśnik (AJD) Algorytmy i Struktury Dnyh. Wykł 9 4 / 4