$ % ∀* + $ $ % * + ! $ % & ! ∀ '( " # ∈& '( '( % ∀ % '( ) ) 1 , '( , '( .. " , & # - $ / $ % &' (( ) * +, ! )- ). %/ 0% &' )- )- ,1 , # $ !! % 2 # " '( 3 " &' %/ 0 2 3 5 6 78 ./ 9 % %/ 0 2 # % : % ' % / % $ &' " (( ) * ,4, 3% /"0 4 0 , ) ) " 23 " 23 9 '( '( '( ; ; " ) # # # <= 1 " ' > $ % % $ $ $ (BB ! % & " # ? # .@9 "> .@9 %/ 0 23 "& .> .@99 " " " 8 > BB( $ $ " " ) " 23 " > $ % ? # $ % $ !! $ % " D $ 2 %/ 0% 3 ) )) " 2)- )3 . %/ 0% " 2 &' 3 " %/ 0 2 5 6 78 ./ 9 % # % : % ' / % $ " 23 > # $ " ) . %/ 0% (( # 6 # +, # &' &' " $ &' " A> 5 # ) > )- # &' )- +1 C ) " 3 C EEC %/ 0 2 3% /"0 / " 2 "&' 2 > 3" &' " - 3 . 4'45 46 4 ) # ) , ) ) # 7 2 4'45 46 4 4'4 7 46 4 8 , , > , & G , > > " F ; ; ; ;F; F F F ( ; ! ; ! , , > G ( E E E E E E E E ( E E E E E E E E E E E E E E E E ) * E E E E E E E E E E E E E E E E E E E E E E E E E E F E E E E E E E E E E E E E E E ! + , - . / 0 ;F; F F F ( ; ! ; ! E E E E E E E E ( ;F; F F F ( ; ! ; ! , > " E E E E E E *E E E E E E E E E E E E E E E E E E ) * + E E E E E E E > ; ; ; ) , ; ; ; * G " F , & > , & ! E E E E E E E F ) , G E E E E E E E E ( E E )E E E E E E E E E E E E E E ) * E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E F E E E E E E E E E E E E E E E ! + , - . / 0 , & > " ! E E E E E E E E E E E E E E E E E E E E F E E E E E E E E E E E E E ! , - . / 0 F ; ; ; ) ;F; F F * F ( ; ! ; ! ! E E E E E E E E ( E E E E E E E E E E E E E E E E ) * E E E E E E E E E E E E E ! E E E E E E E E E E E E E E E E E E E E F E E E E E E E E E E E E E E E ! + , - . / 0 , , > , & G , > > " F ; ; ; ) ;F; F F / * F ( ; ! ; ! , , > + ) F ; ! ; ! E E E E E E E E E E E E E E E E E E E E E E E E + , - ) E E E E E E E E ( G E E E E E E E E E E E E E E E E ) * E E E E E E " F E E E E E E E > " E E E E E E E E . E E E E E F E E E / E E E E E E E E ! 0 F + ) ; ; ; ;F; F F / * F ( ; ! ; ! , G ;F; F ( E E E E E E E E E E E E E E E E ) * , & ! , & ; ; ; F / * E E E E E E E E ( , , > E E E E E E E E ( E E E E E E E E E E E E E E E E ) * E E E E E E E E E E E E E E E E E E E E E E E E E E E E E .E E E E F E E E E E E E E E E E E E E E ! + , - . / 0 , & G ) " F ! E E E E E E E E E E E E E E E E E E E E F E E E E E E E E E E E E E E E ! + , - . / 0 + ) * ; ; ; F / ;F; F , ; F ( ! ; ! ! E E E E E E E E ( E E E E E E E E E E E E E E E E ) * E E E E E E E E E E E E E ! E E E E E E E E E E E E E E E E E E / E E E F E E E E E E E E E E E E E E ! + , - . / 0 , , > + ) , & G ) ; ; ; * F / ;F; F , ; E E E E E E E E ( F ( - ! ; ! & 6 6 1, '( , '( & 5 '( E E E E E E E E E E E E E E E E ) * > " F E E E E E E E E E E E E +E E E E + , , E E E E E E E E E E E E E E E E E E E E F E E E E E E E E E E E E ! - . / 0 + ) * . F / ;F; F , ; ! ; 0 ! ) ) E E E E E E E E ( E E E E E E E E E E E E E E E E ) * E E E E E E ! E E E E E E E E E E E E E E E E E E E E E E E E E E E F E E E E E E E E E E E E E E E ! + , - . / 0 - • Determinar si un Grafo tiene Ciclos • Obtener la Ordenación Topológica de un Grafo 6+ & / " F - " " + ) ; ; ; F - # "F " ) G ( # 8/ , & ! # :/ , ) , ; 9 & 19 20 Un Orden Topológico de un Grafo Dirigido Acíclico G = (V,E) es una ordenación de sus vértices de forma que si (u, v) E, entonces u aparece antes que v. Dado un grafo G = (V,E), el DFS puede usarse para determinar si es Acíclico y, en ese caso, obtener un Orden Topológico: • El grafo es Acíclico si no tiene ninguna arista hacia atrás; esto es, una arista (u,v) cuyo destino # • El orden en que finaliza la exploración de los vértices en el Recorrido en Profundidad es un Orden Topológico invertido. •¡No es posible la Ordenación Topológica cuando existen ciclos! • El orden no es único. • Permite dibujar los vértices en el eje horizontal con las aristas de 21 izquierda a derecha. % 1 # 22 %2 3 ' " & " " # ! " " ! , , # '( '( (( 55 , , F F F F F # !! !! !!!!!!!! $ & F # !! !! !!!!!!!! 24 # " # " # $7 ' " $ % 1 ' 6% " < " ! $ 4 % > % !" % - ! ∀* + ! & 1 ∀ '( 6 % " >H ∈& ! '( % ! % * + '( 4 %6 '( % > !" % 5 $ % $ % % ) #! ) $ % $ # ) % # % 6 ) " D 2 %/ 0% " (( # " / . %/ 0% L, 3 ) " 23 > D/ 0 6 % .8 # )# ) 9 )" 2)- 3 I' " I' . %/ 0% )I' )- $7 I' 3 " > %/ 0 2 3 C EEC % D8 D % : > " % > % 5 6 78 ./ 9 % %/ 0 2 3% /"0 # % : % ' % / D % $ # ) " 2D " 3 ) " 2D " 3 " > 3 C EEC %/ 0 2D " % D8 D" ) I' 998 &' &' " # $7 +JK 998 26 $ $ % ? # .@9 "> .@9 %/ 0 23 "& .> .@99 " > " " 8 > )998 " ) " 23 $ " " > 899 $ " 6 % .8 9 $ % ? # A> #% ∀ # 5 % % # $ % % $ $ $ 899 $ % " " 2 +1 C < ) 27 2 # ) # ! 4'45 46 4 4'4 7 46 4 , , , , , & , = & 8 8 8 : E > E : ? @ E E 2 A E B E C E D E 8 : > ? @ 7 2 F > ? @ : > 6 3 : : A C 1 A > C 8 @ A 5 F8G FG F:G F:5>G F:5>5?G F:5>5?5@G F>5?5@G F?5@G F?5@5AG F?5@5A5CG F@5A5CG B ? 4 1 B 9 FA5CG FCG FC5BG FBG C C A B ! D D D FG FDG FG @ C 8 : > ? @ A C B D 29 ( & , 1, I ;3 < ) ) ) : ) ) )F EE- 31 < , ,H '( ) '( ) 2 5 < , (((( "" ,H #: #: )→ ,$ ##: ##: ,$ ,,E : : M =)> ? @ M =)>? @ 32 ( & , 5 1, I ) < , ,H '( ) '( ) "" M M =)=)- ) ) : ) ) >>? ? @@ ) )F '( < , ,H #: ,H 8- (((( '( ##: ##E8# ,H,$ ,$ ,, : E8#@@ H M JM8== ,, "" )#):K → ))M M =1 =1 ,, "" )) ) 5 ,$ >>? ?, @@ 8 ))- 0 < >>? ? @@ 33 ( & , I )- " 5 )5 I M 23 )'( 5 < , '( 1, '( ! "" M M =1 =1 ,, )) "" "" M M == ,, M M == )) )) "" M M =1 =1 ,, )) ,$ , % M 2)" M 23 " )/ 3 ∝ '( M 2 3 4? ∝ '( L" M 23 " # $ # M 2)/ L 1 5 3 < 35 ))- >>?? @@ ,, ,, #: ##@ @ )) )) ) ,$), )- )) A M M A 7 A 2 %/ 0% . %/ 0% A/ 0 6 % .8 9 :>>?? @@ ))- >>?? @@ ))- >>?? @@ 11 ,, )) 11 ,, )) ))))- >>?? @@ >>?? @@ 11 ,, ))- >>?? @34 @ )) 5 < , '( 1, '( I ,H )3 " M 23 8 <'8 <8 N- &" ' )# ) >>?? @@ #: & M 2)-% 3 '( '(D 8 % )A" : 4> > 5 5 # '( !" % % ) !" % ) ∀∀ '( D#∈5/"0 ) # % " ) M 2D3 8 <'8 <8 N- 5 % ) # % ! " M 2D3 " M 2)3 6 ! % A8 D 6 6 6 ! " ))- ) )) ( , '( ; '( )) '( ,$ ,,H #E #8 #> ,$ , #E #8 #> HM =J= :,, #:K → M )) ,, M M == )- ! : M M =1 =1 ,, "" "" ,H $ % : " >>?? @@ )) < , ,H '( (((( :8- "" :,H '( ) M M =)=)M M == ,, )F ) ) : ) ) "" "" # %% 36 0 , P P ) B ) G ; ) '( '( A M 23 E A M 23 )/ < , N$ , ) ) : ) ) O O O O )F ; ; ; ; E E E E E E E ; M =*> 4? ∞ # * , " " , E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E ) ) ) ) )F C M < , N$ , )/ ; F ∝∝ C ∝∝∝ ∝ O N$ , - < , ; G F O < , '( > ) 1 " O O O O O O O O O FO O D D ; ; ; ; ;F F ∅ F ∝∝C∝∝∝∝ ( ( ( ( ( ( ( E E E E E E E E ( E E E E E E E E E E ) E E E E E E E E E E E E E E E ) C ) E E E E E * E E E * E ( E E E E E E E ( E E E E E E E E E E E * E E E E E E E E E E E E E E E E E E E E E E E E ( E E E E E E E E E E E E E E E E E E E E E E E E E E E ,$ , 37 38 ) $ " ": A M M A A 7 2 %/ 0% 3 A M A" 4 9 % 2 %/ 0% M 23 A M 2)- A " 6 % .8 A/ 0 M 23 A8 3 8 <'8 <8 NE ) " % 9% 4% D " % ' $ M 2D3 " % 6 ) > % %/ 0 2)3 % % , H ; 5 M 2)3 D F ( C ( ) * +6 A MQ A . %/ 0% : )5 /"0 " 8 <'8 <8 N- 5 M 2D3 " A8 C A M 2D3 ) L L L L ; ; ; ; ; ; ; ; ; " " , ), ,1 , , ,L + ,; , A M 23 : E A M 2 3 ,; , A M 23 5 6 6 6 N$ , ) .) ;) 9 ) .) ;) 9 .) ;) ;) 9 ) .) ;) ;) 9 .) ;) ;) ;) 9 ) .) ;) ;) ;)F9 ; 6 78 ./ 6 )F 3 ) ) ) ) )- > 5 < , ) )- . %/ 0% " E E E E E E E E E ,1 , E E E6 < , N$ 6, , , #( 444 F 2 $ % % 6A $ " $ " $ " < , % 8 <'8 <8 N- " M 23 A $ % 6A M/ST>/5 U@ E O I ( # L" L" L2 P M 23 & %? # A 8 M A A> $ 7 - '( ) . ) ) ( A> )- " I J B O O O O O O ) - ) / )F '( G ; F (C ( ) , 5 I ) ) - : ) & ,H ) & %? # .@9 R " ? # .@9 # $ % ) " ) G: 2 O ∝∝ C ∝∝∝ ∝ D D ; ; ; E E E E E E E - ( H1 ? * M 2 3 , E E F E E E E E / E E E E E E E E C E E E , E E E E , E E E E E E E E E E E E E E E E E E E E E E E . 43 44 F '< % / D D " : % ' / % 5 % % $$ " V % ; $ V " M 2D3 9 " 8 <'8 <8 N5 M 2)3 " M 2D3 A M 2D3 ) % A8 ) B# " M 2)3 & '( ) ) : ) V 5 ) , . ) ( V QQQI , D 6 < < , O O O O O O O ) / 8 ,H '( G ; F (C - ) )F 5 I B ) ( ) ) QQQ O ∝∝ C ∝∝∝ ∝ D D ; ; ; ; E E E E E E E - E E F E E E E E / E E E E E E E E C E E E ,+ E E E E ,+ E E E E E E E E E E E E E E E E E E E E E E E . 6 45 46 I 9 < /6 8 J " , + , 2 1 ) 8 '( ; 5 ; 5 ; 5 ;F 5 ; 5 ; 2 P R 7 - P % A8 )- P % A8 D :/ 9 < 6 2 P P P P ) ) " + , 5 A 7 D; " 9 - - , & 1, ; '( ) , > (C ) ( O O O O O O (O O ) - ) / )F F; F;;! ;! # % & 5 " ; 7 7 7 7 7 7 7 7 %A . ( ) ) ( (C ) - ) )F / / ; ;;F;F % I A 7 )- < , G ; ∝ ∝ E E E E F E E E E E E E E O 7 ; O 7 ; O 7 ; D ; O 7 ; D ;F O 7 ; ; ;F ; ; O 7 ;F ; ; 7? ;+;;+ (OO 7 ; ;; ; OO1 7 ; ; ; ; ; ; ; ;; F; F *O 7 ; ; ;! ; ; F *O 7 ; ; ; ; ; F ; F; C E E E E E E E ∝ ∝ E E E E E E + + E E E E E E (/ ! F ∝ ∝ E E E E E E E E E E E E E E E E E E E - / C + (/ 0 . ; 48 < , ,H '( 1 ) " ∝ ∝ E E E E F E E E E E E E E ,H '( M ) ; ;F ;F ; ; ; ; ; ; ; F I * ) , 5 B ) ; G ; ; ; D ; D ; ; ;F ; ;+ ; ; ; : ) M 2D3 , AM 5'( '( ; , I <= ) ( ) 7 7 7 7 ; % " 23 % " '( 23 ) 5 , " 26 H ; A/ 0 6 % .8 % A 7 )% % ) ; 5 < " , I " . % A 7 )- L 0 : ) % - & I ) M C E E E E E E E O 7 ;; ; ;0 ; F;; F;(( ;0 ; F ; ; F O 7 ;! ; F; ∝ ∝ E E E E E E + E E E E E E 0F ∝ E E E E E E F ∝ E E E E E E E (( ; ; F E E E E E E E - / C + (/ 0 . (( ' $ % $ $ % 2 6A & %? # .@9 R " ? # .@9 " # % 8 <'8 <8 N- 8 M/ST>/5 U@ ( " " M 23; A M 23 O 899 H < , N$ , $ " 6 % 7 " ".7 9 7 @ $ " " % " 23 $ % 6A & %? # A> $ % ) " A M A J $ ": "W X 7 I ( # L" L" L2 P 98 $ A> )- % " 2 39 92 9 49 50 E # $ " " ) " "W X M A M . %/ 0% K 2 N" WX ∈ Ο O@O % " " M 2 3 7 7 A7 ; > 5 A" 4 7 7 $ 7 %A M " % " 2)3 5 " % " 2)3 5 6 4% ' % % / % $ " M 2D3 9 " " M 2D3 " 7 A7 6 6 66 %N"" W X 5 " A AM ) $ 78 ./ D " M 2)3 M 2)3 D; " O@O 0% ∈A Ο O@O2 %%/ O>O 3 M 23 8 <'8 <8 N% " 23 M 23 E " % I .7 9 " 9% 5 %/ 0 2)3 % V V 5 V A M 2D3 /"0 ; M 2D3 ) 6