Visita in profondità partendo da S
Inizializzazione
Si usa una struttura dati di tipo Stack
Inserimento del nodo S
Stack: [S/0]
Visitati: []
Elaborazione dei nodi inseriti in Stack finchè non sono esauriti
Estrazione e visita del nodo S
Stack: []
Storico Stack: [S/0]
Nodi adiacenti a S non ancora visitati
Inserimento in Stack del nodo adiacente non visitato A
(S->A)
Inserimento in Stack del nodo adiacente non visitato C
(S->C)
Inserimento in Stack del nodo adiacente non visitato E
(S->E)
Stack: [A/1, C/1, E/1]
Visitati: [S/0]
Storico Stack: [S/0, A/1, C/1, E/1]
Estrazione e visita del nodo E
Stack: [C/1, E/1]
Storico Stack: [S/0, A/1, C/1, E/1]
Nodi adiacenti a E non ancora visitati
Inserimento in Stack del nodo adiacente non visitato F
(E->F)
Stack: [C/1, E/1, F/2]
Visitati: [S/0, E/1]
Storico Stack: [S/0, A/1, C/1, E/1, F/2]
Estrazione e visita del nodo F
Stack: [E/1, F/2]
Storico Stack: [S/0, A/1, C/1, E/1, F/2]
Nodi adiacenti a F non ancora visitati
Inserimento in Stack del nodo adiacente non visitato C
(F->C)
Inserimento in Stack del nodo adiacente non visitato T
(F->T)
Stack: [E/1, F/2, C/3, T/3]
Visitati: [S/0, E/1, F/2]
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3]
Estrazione e visita del nodo T
Stack: [F/2, C/3, T/3]
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3]
Nodi adiacenti a T non ancora visitati
Stack: [F/2, C/3, T/3]
Visitati: [S/0, E/1, F/2, T/3]
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3]
Estrazione e visita del nodo C
Stack: [C/3, T/3]
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3]
Nodi adiacenti a C non ancora visitati
Inserimento in Stack del nodo adiacente non visitato D
(C->D)
Stack: [C/3, T/3, D/4]
Visitati: [S/0, E/1, F/2, T/3, C/3]
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3, D/4]
Estrazione e visita del nodo D
Stack: [T/3, D/4]
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3, D/4]
Nodi adiacenti a D non ancora visitati
Stack: [T/3, D/4]
Visitati: [S/0, E/1, F/2, T/3, C/3, D/4]
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3, D/4]
Estrazione e visita del nodo C
Il nodo C è già stato visitato. Passo al prossimo nodo se presente in Stack
Stack: [D/4]
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3, D/4]
Estrazione e visita del nodo A
Stack: []
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3, D/4]
Nodi adiacenti a A non ancora visitati
Inserimento in Stack del nodo adiacente non visitato B
(A->B)
Stack: [B/2]
Visitati: [S/0, E/1, F/2, T/3, C/3, D/4, A/1]
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3, D/4, B/2]
Estrazione e visita del nodo B
Stack: []
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3, D/4, B/2]
Nodi adiacenti a B non ancora visitati
Stack: []
Visitati: [S/0, E/1, F/2, T/3, C/3, D/4, A/1, B/2]
Storico Stack: [S/0, A/1, C/1, E/1, F/2, C/3, T/3, D/4, B/2]
Stack è vuota. Arresto
Storico Stack
[S/0, A/1, C/1, E/1, F/2, C/3, T/3, D/4, B/2]
Ordine di visita dei nodi
[S/0, E/1, F/2, T/3, C/3, D/4, A/1, B/2]