Effettivamente...
codice:
b - g
|   | \
a - c - f
| 
d - e
E se si creasse una lista dei nodi visitati e si facesse fermare l'algoritmo (dicendo che c'è un ciclo) quando si va ad esplorare un modo già visitato?