1 / 10

Grafy

Grafy. Rodzaje, przechodzenie grafu. Grafy podstawowe definicje. Grafem nazywamy strukturę G=(V,E) składającą się ze skończonego i niepustego zbioru wierzchołków V i zbioru krawędzi E. Krawędź od wierzchołków u do v oznaczamy jako (u,v).

radley
Download Presentation

Grafy

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Grafy Rodzaje, przechodzenie grafu

  2. Grafy podstawowe definicje Grafem nazywamy strukturę G=(V,E) składającą się ze skończonego i niepustego zbioru wierzchołków V i zbioru krawędzi E. Krawędź od wierzchołków u do v oznaczamy jako (u,v). Drogą od wierzchołka v1 do vj nazywamy sekwencję krawędzi: (v1,v2), (v2,v3),…, (vn-1,vn) Dwa wierzchołki vi i vj nazywamysąsiędnimi, jeżeli w zbiorze D istnieje krawędź (vi,vj). Taką krawędź nazywamy incydentną do wierzchołków vi, vj. Stopniem wierzchołka v deg(v) – nazywamy liczbę krawędzi do niego incydentnych. Jeśli deg(v)=0 to jest to wierzchołek izolowany.

  3. Rodzaje grafów: Grafy proste graf pełny – każdy wierzchołek jest połączony krawędzią z każdym wierzchołkiem

  4. Rodzaje grafów: Grafy złożone Multigraf – dwa wierzchołki mogą być połączone kilkoma krawędziami Pseudograf – pojawiają się pętle czyli krawędzie wychodzące z i wchodzące do tego samego wierzchołka

  5. 5 4 2 6 1 5 5 2 Rodzaje grafów: Grafy złożone Graf skierowany – krawędzie, zwane też łukami, spełniają warunek (u,v)≠(v,u) Graf ważony – gdy krawędziom zostają przyporządkowane liczby – wagi

  6. A B E C D Reprezentacja grafów Graf Lista sąsiedztwa

  7. Reprezentacja grafów Macierz sąsiedztwa Macierz incydencji

  8. Przechodzenie w głąb funkcja dfs() dfs() for wszystkie wierzcholki Visited[v]:=false; Ustaw wskaźnik current[v] na pierwszy wierzchołek na liście L[v] Odwiedz(p); visited[p]=true; If current[p] nie puste Stos pusty; push(stos,p); while stos jest niepusty v=wierzcholek(stos); niech w będzie wierzchołkiem wskazywanym przez current[v] przesuń wskaźnik current[v] do następnego wierzchołka na liście L if current[v]=pusty pop(stos); if not visited[w] odwiedz(w) visited[w]=true; if current[w] różne od nil then push(stos,w)

  9. Przechodzenie grafów – wszerzfunkcja bfs() bfs() for wszystkie wierzcholki Visited[v]:=false; Ustaw wskaźnik current[v] na pierwszy wierzchołek na liście L[v] Odwiedz(p); visited[p]=true; If current[p] nie puste Kolejka pusta; enqueue(koljka,p); while stos jest niepusty v=początek(kolejka); niech w będzie wierzchołkiem wskazywanym przez current[v] przesuń wskaźnik current[v] do następnego wierzchołka na liście L if current[v]=pusty dequeue(kolejka); if not visited[w] odwiedz(w) visited[w]=true; if current[w] różne od nil then enqueue(kolejka,w)

  10. Bibliografia • A. Drozdek, „C++. Algorytmy i struktury danych”, Helion, Gliwice 2004; • L. Banachowski, K. Diks, W. Rytter, „Algorytmy i struktury danych”, WNT, Warszawa1996;

More Related