Advertisement
mikymaione

Alg_20180125_1

Jan 26th, 2018
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.55 KB | None | 0 0
  1. void dfs_visita(Grafo GT, Grafo G2, int s)
  2. {
  3.     s.color = Color.Gray;
  4.  
  5.     foreach (var v in GT.Adj[s])
  6.         if (v.color == Color.White)
  7.         {          
  8.             G2.Add_Edge(v, s); //lo creo già nel senso giusto come stava in G
  9.             dfs_visita(GT, G2, v);
  10.         }
  11.  
  12.     s.color = Color.White; //così puoi gestire i percorsi paralleli e le biforcazioni esempio grafo "G2 E_DAG2"
  13. }
  14.  
  15. Grafo Alg_20180125_1(Grafo G, int[] B, int s)
  16. {
  17.     var G2 = new Grafo();
  18.     var GT = G.Trasposto();
  19.    
  20.     foreach (var b in B)
  21.         GT.V[b].color = Color.Black;
  22.    
  23.     dfs_visita(GT, G2, s);
  24.    
  25.     return G2;
  26. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement