Junior
Czym jest graf skierowany i jakie są jego cechy?
sobes.tech AI
Odpowiedź od AI
Graf skierowany to graf, który ma zbiór wierzchołków (węzłów) i zbiór krawędzi (łuków), z których każda ma kierunek.
Cechy:
- Krawędzie skierowane: Poruszanie się po krawędzi jest możliwe tylko w jednym kierunku, wskazanym przez strzałkę.
- Stopień wierzchołka: Dla grafu skierowanego definiuje się stopień wejściowy (liczba krawędzi kończących się w wierzchołku) i stopień wyjściowy (liczba krawędzi zaczynających się w wierzchołku).
- Ścieżki i cykle: Ścieżka to sekwencja wierzchołków połączonych krawędziami w odpowiednim kierunku. Cykl to ścieżka zaczynająca się i kończąca w tym samym wierzchołku. Grafy skierowane mogą zawierać cykle skierowane.
- Połączenia: Rozróżnia się słabą spójność (ignorując kierunki krawędzi, graf jest spójny jak nieskierowany) i silną spójność (dla dowolnych dwóch wierzchołków A i B istnieje skierowana ścieżka z A do B i z B do A).
- Reprezentacja: Mogą być reprezentowane za pomocą list sąsiedztwa lub macierzy sąsiedztwa, gdzie dla grafu skierowanego macierz zwykle nie jest symetryczna.
Przykład reprezentacji za pomocą listy sąsiedztwa:
# Graf G = (V, E), gdzie V = {0, 1, 2}, E = {(0, 1), (1, 2), (2, 0)}
graf = {
0: [1],
1: [2],
2: [0]
}
Przykład reprezentacji za pomocą macierzy sąsiedztwa:
# Graf G = (V, E), gdzie V = {0, 1, 2}, E = {(0, 1), (1, 2), (0, 2)}
macierz = [
[0, 1, 1], # 0 -> 1, 0 -> 2
[0, 0, 1], # 1 -> 2
[0, 0, 0] # brak krawędzi wychodzących z 2
]