La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Componenti fortemente connesse. Una componente fortemente connessa (CFC) di un grafo orientato G=(V,E) è un insieme massimale di vertici U V tale che.

Presentazioni simili


Presentazione sul tema: "Componenti fortemente connesse. Una componente fortemente connessa (CFC) di un grafo orientato G=(V,E) è un insieme massimale di vertici U V tale che."— Transcript della presentazione:

1 Componenti fortemente connesse

2 Una componente fortemente connessa (CFC) di un grafo orientato G=(V,E) è un insieme massimale di vertici U V tale che per ogni coppia di vertici u e v in U si ha che ciascuno dei due vertici è raggiungibile dallaltro.

3 Componenti fortemente connesse

4

5 Grafo trasposto Il grafo G T =(V,E T ) è il trasposto di G=(V,E) se E T = {(u,v): (v,u) E} (rovescia il senso di percorrenza degli archi di G). G e G T hanno le stesse componenti fortemente connesse.

6 Componenti fortemente connesse Strongly-Connected-Components(G) 1.chiama DFS(G) per calcolare f[u] per ogni vertice u 2.calcola G T 3.chiama DFS(G T ), ma nel ciclo principale di DFS considera i vertici in ordine decrescente di f[u] 4.return i vertici di ogni albero nella foresta DFS prodotta al passo 3 come una diversa componente fortemente connessa Lalgoritmo seguente trova in tempo lineare (O(V+E)) le componenti connesse di un grafo orientato G=(V,E).

7 Componenti fortemente connesse 13/14 3/4 1/1011/16 2/712/15 8/9 5/6 Grafo G iniziale

8 Componenti fortemente connesse 13/14 3/4 1/1011/16 2/712/15 8/9 5/6 Grafo G T

9 Componenti fortemente connesse 13/14 3/4 1/1011/16 2/712/15 8/9 5/6

10 Componenti fortemente connesse 13/14 3/4 1/1011/16 2/712/15 8/9 5/6

11 Componenti fortemente connesse Lemma Se due vertici sono nella stessa CFC, allora nessun cammino fra loro esce da questa CFC. Teorema In una qualunque visita in profondità, tutti i vertici in una stessa CFC sono posti nello stesso albero DFS.

12 Avi Un avo (u) di un vertice u è il vertice (unico) w raggiungibile da u che massimizza f[w] (w è lultimo nodo raggiungibile da u nellordinamento della DFS). Teorema In un grafo orientato G = (V,E) lavo (u) di un qualunque vertice u V in una qualunque visita in profondità di G è un antenato di u.

13 Componenti fortemente connesse Corollario In ogni visita in profondità di un grafo orientato G = (V,E), per ogni vertice u V i vertici u e (u) appartengono alla stessa CFC. Teorema In un grafo orientato G = (V,E), due vertici u,v V appartengono alla stessa CFC se e solo se essi hanno lo stesso avo in una visita in profondità di G.

14 Correttezza Teorema Strongly-Connected-Components(G) calcola correttamente le CFC di un grafo orientato G. Dim. Per induzione. Tesi: se tutti gli alberi prodotti prima delln-esimo nella DFS sono CFC, allora lo è anche ln-esimo. Banalmente vero per n=0. Per il caso induttivo, cont...

15 Considera un albero DFS, T con radice r prodotto dalla ricerca per profondità su G T, sia C(r) linsieme dei vertici con avo r. Tesi: un vertice u è presente in T, sse u è in C(r). Chiaramente, ogni vertice in C(r) è anche in T. Se f[ (w)]>f[r], allora w non può essere in C(r): –Quando r viene selezionato, w è già stato inserito nellalbero con radice (w). Se f[ (w)]

16 Problema: dato un grafo orientato …

17 … trovare le sue CFC

18 Inizio Prima DFS

19 Inizio

20

21

22 Identificazione dei tempi di fine visita

23 Transposizione del grafo

24 Seconda DFS

25

26

27

28

29

30

31

32


Scaricare ppt "Componenti fortemente connesse. Una componente fortemente connessa (CFC) di un grafo orientato G=(V,E) è un insieme massimale di vertici U V tale che."

Presentazioni simili


Annunci Google