Advertisement
Guest User

Untitled

a guest
Jan 25th, 2015
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.73 KB | None | 0 0
  1. Scrivere un algoritmo che dati, un grafo G(V,E), un vertice s € V e un vertice k, effettua una visita in ampiezza di G sino a scoprire i vertici che distano k da s. Alla fine della visita i vertici v con d[v] <= k devono essere di colore nero, altrimenti di colore bianco
  2.  
  3. BFS(G,s,k)
  4. for ogni vertice u € V[G] \ [s]
  5. do color[u] := WHITE
  6. d[u] := infinito
  7. piGreco[u] := NIL
  8. color[s] := GRAY
  9. d[s] := 0
  10. piGreco[s] := NIL
  11. Q:=[s]
  12. while Q != empty do
  13. u := head[Q]
  14. for ogni v € Adj[u] do
  15. if color[v] = WHITE
  16. d[v] := d[v] + 1
  17. //FIN QUI SOLITO BFS
  18. if d[v] < k
  19. color[v] := GRAY
  20. piGreco[v] := u
  21. Enqueue(Q,v)
  22. Dequeue(Q)
  23. color[u]:= BLACK
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement