ASD Ćwiczenia 12: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Diks (dyskusja | edycje)
Diks (dyskusja | edycje)
Linia 34: Linia 34:


==Zadanie 3==
==Zadanie 3==
Graf spójny bez wierzchołków rozdzielających nazywamy '''grafem dwuspójnym'''.
Graf spójny bez wierzchołków rozdzielających nazywamy '''grafem dwuspójnym'''. Dwuspójną składową grafu G nazywam każdy jego maksymalny (w sensie zawierania), dwuspójny podgraf.
 
----
 
a) Udowodnij, że każda krawędź grafu należy do dokładnie jednej dwuspójnej składowej.
 
----
b) Zaprojektuj algorytm, który w czasie liniowym policzy wszystkie dwuspójne składowe danego (przez listy sąsiedztw), spójnego grafu.
 
<div class="mw-collapsible mw-made=collapsible mw-collapsed">
Wskazówka __Hider__
 
<div class="mw-collapsible-content" style="display:none">
Zaadoptuj algorytm do wykrywania wierzchołków rozdzielających. Każdą nowo odwiedzaną krawędź <math>u-v</math> odkładaj na stos. Bez straty ogólności przyjmijmy, że <math>u</math> jest przodkiem <math>v</math> w drzewie. Jeśli <math>u-v</math> jest krawędzią drzewową, to odkładamy ją na stos będąc w wierzchołku <math>u</math>, natomiast jeśli jest to krawędź niedrzewowa, to będąc w wierzchołku <math>v</math>.
</div>
</div>

Wersja z 10:15, 29 wrz 2006

Zadanie 1

Pokaż, w jaki sposób sprawdzić w czasie liniowym, czy graf jest grafem dwudzielnym


a) za pomocą przeszukiwania wszerz,

b) z wykorzystaniem przeszukiwania w głąb.


Wskazówka

Zadanie 2

Niech G=(V,E) będzie grafem spójnym. Wierzchołkiem rozdzielającym w grafie G nazywamy każdy wierzchołek, którego usunięcie rozspójnia G. Zaadoptuj algorytm wykrywania mostów grafie do znajdowania wszystkich wierzchołków rozdzielających.

Wskazówka

Zadanie 3

Graf spójny bez wierzchołków rozdzielających nazywamy grafem dwuspójnym. Dwuspójną składową grafu G nazywam każdy jego maksymalny (w sensie zawierania), dwuspójny podgraf.


a) Udowodnij, że każda krawędź grafu należy do dokładnie jednej dwuspójnej składowej.


b) Zaprojektuj algorytm, który w czasie liniowym policzy wszystkie dwuspójne składowe danego (przez listy sąsiedztw), spójnego grafu.

Wskazówka __Hider__