Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Algorytmy i struktury danych Reprezentacja grafu Wybrane problemy.

Podobne prezentacje


Prezentacja na temat: "Algorytmy i struktury danych Reprezentacja grafu Wybrane problemy."— Zapis prezentacji:

1 Algorytmy i struktury danych Reprezentacja grafu Wybrane problemy

2 Skierowany Pętle Wielokrotne krawędzieGraf Prosty Wagi

3 Reprezentacja grafu Macierz sąsiedztwa A B C D BCDA Lista sąsiedztwa A B C D A B C D B A B B CD D C Jeśli macierz jest symetryczna (graf nieskierowany), można przechowywać tylko jedną połówkę.

4 Reprezentacja grafu Macierz incydencji nopm Lista incydencji m n o p m n o p p m p op n m n o p n mno

5 Reprezentacja wag Macierz sąsiedztwa Lista incydencji A, BCDA A B C D A B C D A B C D D,2 B,3 C,5 B,7

6 Składowe spójnosci DFS

7 Minimalne drzewo spinające Zastosowania – np. budowa sieci dróg

8 Minimalne drzewo spinające Alg Kruskala: Wybieraj kolejno krawędzie o minimalnej wadze tak, by nie tworzyły cyklu. Alg Prima-Dijkstry: Drzewo = krawędź o minimalnej wadze; Spośród krawędzi incydentnych z aktualnym drzewem wybierz krawędź o najmniejszej wadze; Dodaj krawędź do drzewa. Pot. problem: stwierdzanie obecności cyklu. Pot. problem: grafy niespójne.

9 Minimalna droga Zastosowania: - wybór najkrótszej (najszybszej) trasy przejazdu; - wybór najtańszego procesu technologicznego.

10 Alg. Dijkstry Z.: Wagi są nieujemne 1. Dla sąsiadów wierzchołka startowego S ustaw odległość d i równą wadze krawędzi e(s,i), dla każdego wierzchołka innego niż S inicjujemy d i = 2. Spośród nieodwiedzonych wierzchołków wybierz wierzchołek i o mininimalnej ogległości d i 3. Dla sąsiadów j wybranego wierzchołka aktualizuj odległość jako min{ d j, d i +e(j,w) } 4. Jeżeli są nieosiągnięty został wierzchołek końcowy K (lub są nieodwiedzone wierzchołki gdy nie zadajemy K) przejdź do punktu 2

11 Droga, cykl Eulera Marszruta – otwarta (zamknięta), zawierająca wszystkie krawędzie w grafie Zastosowania: Problem chińskiego listonosza; Rysowanie/wycinanie figur przy pomocy plotera.

12 Minimalne drzewo spinające Algorytm Dijkstry: Algorytm pozwala efektywnie wyznaczyć sieć dróg - z określonego wierzchołka do wszystkich innych. Pot. problem: ujemne wagi. Dla wszystkich wierzchołków ustal s= ; Dla w. początkowego P ustal s=0. Podstaw D={P}; Zaktualizuj odległość s dla wszystkich wierzchołków sąsiednich do D; s[w] = min { s[x] + waga krawędzi {x, w} ; po wszystkich x należących do D }; Wybierz wierzchołek o minimalnej s, podstaw dla niego s=s. D = D {w}.

13 Cykl Eulera - alg Fleuryego Algorytm działa dla grafów eulerowkich, półeulerowskich. Problematyczna jest jednak implementacja testu, czy krawędź jest mostem. Wystartuj z wierzchołka o nieparzystym stopniu (jeśli jest); Wybierz dowolną krawędź, ale most wybieraj w ostateczności; Przejdź do kolejnego wierzchołka.

14 Cykl Eulera – alg. ze stosem Algorytm wymaga grafu eulerowskiego. Wystartuj z dowolnego wierzchołka; Jeżeli istnieją nie przechodzone dotąd krawędzie incydentne z bieżącym wierzchołkiem: Wybierz dowolną krawędź; Przejdź do kolejnego wierzchołka i odłóż go na stos; W przeciwnym wypadku: Przenieś wierzchołek do rozwiązania i zdejmij go ze stosu; Przejdź do wierzchołka na szczycie stosu.

15 Kolorowanie grafów Należy przeprowadzić przydział kolorów w taki sposób, aby sąsiedzi otrzymali różne kolory KOLOROWANIE wierzchołkówkrawędzi

16 Kolorowanie grafów heuryst. LF Dobroć algorytmu jest liniowa, tj. można pokazać graf, dla którego: liczba użytych kolorów ~ liczba wierzchołków optymalna liczba kolorów Wybierz niepomalowany wierzchołek o największym stopniu; Przydziel wierzchołkowi najniższy możliwy kolor.

17 Kolorowanie grafów heuryst. SL Dobroć algorytmu jest liniowa Wybierz wierzchołek o najmniejszym stopniu w nieprzetworzonym podgrafie; Wstaw wierzchołek na początek sekwencji; Usuń z podgrafu wierzchołek i incydentne z nim krawędzie; Po uporządkowaniu wszystkich wierzchołków przydzielaj kolejnym wierzchołkom w sekwencji najniższe możliwe kolory.

18 Kolorowanie grafów heuryst. SLF Wybierz wierzchołek o największym stopniu saturacyjnym (największej liczbie różnobarwnych sąsiadów), a w przypadku kilku wierzchołków o tym samym stopniu wybierz ten o najwyższym stopniu klasycznym; Przydziel wierzchołkowi najniższy możliwy kolor.

19 Cykl Hamiltona Cykl Hamiltona; Problem Komiwojażera; Algorytm przybliżony.


Pobierz ppt "Algorytmy i struktury danych Reprezentacja grafu Wybrane problemy."

Podobne prezentacje


Reklamy Google