Grafy i metody ich przeszukiwania. Zastosowania

Transkrypt

Grafy i metody ich przeszukiwania. Zastosowania
Grafy i metody ich przeszukiwania. Zastosowania.
Graf w najprostszym ujęciu to zbiór wierzchołków oraz zbiór krawędzi, czyli par wierzchołków.
Graf nieskierowany jest to para G=(V,E), gdzie V to niepusty zbiór wierzchołków (vertices); E to
zbiór krawędzi (edges) tj. podzbiór rodziny wszystkich dwuelementowych podzbiorów zbioru V.
Graf skierowany: jest to para G=(V,E), gdzie V j.w.; E to zbiór krawędzi tj. par uporządkowanych o
elementach ze zbioru V. Ruch po grafie możliwy jest tylko w kierunkach wskazywanych przez
krawędzie. Graf skierowany można sobie wyobrazić jako sieć ulic, z których każda jest
jednokierunkowa.
Droga w grafie skierowanym - ciąg krawędzi takich, że koniec jednej krawędzi jest początkiem
następnej.
Droga zamknięta jest to taka droga, która zaczyna i kończy się w tym samym wierzchołku (punkcie)
x1, x2, ....x1.
Długość drogi jest równa ilości krawędzi lub jest o 1 mniejsza od liczby wierzchołków grafu.
Cykl – droga zamknięta o długości co najmniej 1, taka że wszystkie wierzchołki są różne.
Graf acykliczny - graf skierowany nie mający cykli.
Droga bez cykli – acykliczna; to droga niezamknięta.
Krawędź wielokrotna – dwa punkty połączone są co najmniej dwiema krawędziami.
Przeszukiwanie w głąb – polega na wybraniu dowolnego wierzchołka i rekurencyjnemu wywołaniu
funkcji przeszukującej dla każdego wierzchołka sąsiedniego. Przeszukanie powyższego grafu metodą
w głąb zaczynając od wierzchołka A daje następujące wyniki: ABDECF.
Przeszukiwanie wszerz – wybieramy dowolny wierzchołek i przeszukujemy jego następniki, ale nie
rekurencyjnie, tylko powierzchownie. Po przeszukaniu wszystkich następników zaczynamy
przeszukiwać sąsiednie wierzchołki tych następników. Algorytm bazuje na przeszukaniu
wierzchołków na jednym poziomie przed przystąpieniem do przeszukiwania kolejnych poziomów.
Przeszukanie powyższego grafu metodą wszerz daje następujące wyniki: ABCDEF.
Grafy mają szerokie zastosowania w informatyce, a także w wielu dziedzinach życia codziennego, np.
- mapy – aby dowiedzieć się jaką najkrótszą drogą można dostać się z jednej miejscowości do drugiej,
można w tym celu wykorzystać graf, którego wierzchołki będą odpowiadały miejscowościom, a
krawędzie drogom.
- dokumenty hipertekstowe – przeszukując Internet napotykamy dokumenty, które zawierają
odnośniki do innych dokumentów. Internet jest grafem, w którym wierzchołkami są dokumenty, a
krawędziami odsyłacze.
- sieci – sieć komputerowa zbudowana jest z komputerów, które przesyłają między sobą informacje.
Komputery w danej sieci są reprezentowane przez wierzchołki grafu, a połączenia między nimi przez
krawędzie.
- struktura programu – kompilator buduje graf reprezentujący strukturę wywołań podprogramów w
kompilowanym programie. Wierzchołkami grafu są różne funkcje, natomiast krawędzie są skojarzone
z wywołaniami funkcji.
- katalogi ulokowane w naszych komputerach wraz z podkatalogami też tworzą graf.

Podobne dokumenty