Cammini a costo minimo partendo dal nodo B - Algoritmo di Dijkstra
Inizializzazione
Inserimento del nodo B nella frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 999999 |   |   | |
B | 0 |   |   | X |
C | 999999 |   |   | |
D | 999999 |   |   | |
E | 999999 |   |   | |
F | 999999 |   |   | |
G | 999999 |   |   | |
Elaborazione della frontiera finchè non è vuota
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 999999 |   |   | |
B | 0 |   |   | X |
C | 999999 |   |   | |
D | 999999 |   |   | |
E | 999999 |   |   | |
F | 999999 |   |   | |
G | 999999 |   |   | |
Estrazione del nodo B
a distanza minima 0
Visita del nodo B
Aggiorno la distanza del nodo adiacente non ancora visitato A, da 999999 a 8, segnando come predecessore B
A/8/B
Inserimento nella frontiera del nodo adiacente non ancora visitato A
Aggiorno la distanza del nodo adiacente non ancora visitato D, da 999999 a 1, segnando come predecessore B
D/1/B
Inserimento nella frontiera del nodo adiacente non ancora visitato D
Aggiorno la distanza del nodo adiacente non ancora visitato E, da 999999 a 9, segnando come predecessore B
E/9/B
Inserimento nella frontiera del nodo adiacente non ancora visitato E
Storico della frontiera: [B, A, D, E]
Ordine di visita dei nodi: [B]
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 8 | B |   | X |
B | 0 |   | SI | |
C | 999999 |   |   | |
D | 1 | B |   | X |
E | 9 | B |   | X |
F | 999999 |   |   | |
G | 999999 |   |   | |
Estrazione del nodo D
a distanza minima 1
Visita del nodo D
Aggiorno la distanza del nodo adiacente non ancora visitato A, da 8 a 5, segnando come predecessore D
A/5/D
Inserimento nella frontiera del nodo adiacente non ancora visitato A
Storico della frontiera: [B, A, D, E, A]
Ordine di visita dei nodi: [B, D]
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 5 | D |   | X |
B | 0 |   | SI | |
C | 999999 |   |   | |
D | 1 | B | SI | |
E | 9 | B |   | X |
F | 999999 |   |   | |
G | 999999 |   |   | |
Estrazione del nodo A
a distanza minima 5
Visita del nodo A
Aggiorno la distanza del nodo adiacente non ancora visitato C, da 999999 a 15, segnando come predecessore A
C/15/A
Inserimento nella frontiera del nodo adiacente non ancora visitato C
Inserimento nella frontiera del nodo adiacente non ancora visitato E
Aggiorno la distanza del nodo adiacente non ancora visitato G, da 999999 a 7, segnando come predecessore A
G/7/A
Inserimento nella frontiera del nodo adiacente non ancora visitato G
Storico della frontiera: [B, A, D, E, A, C, E, G]
Ordine di visita dei nodi: [B, D, A]
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 5 | D | SI | X |
B | 0 |   | SI | |
C | 15 | A |   | X |
D | 1 | B | SI | |
E | 9 | B |   | X |
F | 999999 |   |   | |
G | 7 | A |   | X |
Estrazione del nodo A
a distanza minima 5
Il nodo A è già stato visitato, quindi lo ignoro
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 5 | D | SI | |
B | 0 |   | SI | |
C | 15 | A |   | X |
D | 1 | B | SI | |
E | 9 | B |   | X |
F | 999999 |   |   | |
G | 7 | A |   | X |
Estrazione del nodo G
a distanza minima 7
Visita del nodo G
Aggiorno la distanza del nodo adiacente non ancora visitato C, da 15 a 13, segnando come predecessore G
C/13/G
Inserimento nella frontiera del nodo adiacente non ancora visitato C
Inserimento nella frontiera del nodo adiacente non ancora visitato E
Aggiorno la distanza del nodo adiacente non ancora visitato F, da 999999 a 10, segnando come predecessore G
F/10/G
Inserimento nella frontiera del nodo adiacente non ancora visitato F
Storico della frontiera: [B, A, D, E, A, C, E, G, C, E, F]
Ordine di visita dei nodi: [B, D, A, G]
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 5 | D | SI | |
B | 0 |   | SI | |
C | 13 | G |   | X |
D | 1 | B | SI | |
E | 9 | B |   | X |
F | 10 | G |   | X |
G | 7 | A | SI | |
Estrazione del nodo E
a distanza minima 9
Visita del nodo E
Storico della frontiera: [B, A, D, E, A, C, E, G, C, E, F]
Ordine di visita dei nodi: [B, D, A, G, E]
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 5 | D | SI | |
B | 0 |   | SI | |
C | 13 | G |   | X |
D | 1 | B | SI | |
E | 9 | B | SI | X |
F | 10 | G |   | X |
G | 7 | A | SI | |
Estrazione del nodo E
a distanza minima 9
Il nodo E è già stato visitato, quindi lo ignoro
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 5 | D | SI | |
B | 0 |   | SI | |
C | 13 | G |   | X |
D | 1 | B | SI | |
E | 9 | B | SI | X |
F | 10 | G |   | X |
G | 7 | A | SI | |
Estrazione del nodo E
a distanza minima 9
Il nodo E è già stato visitato, quindi lo ignoro
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 5 | D | SI | |
B | 0 |   | SI | |
C | 13 | G |   | X |
D | 1 | B | SI | |
E | 9 | B | SI | |
F | 10 | G |   | X |
G | 7 | A | SI | |
Estrazione del nodo F
a distanza minima 10
Visita del nodo F
Inserimento nella frontiera del nodo adiacente non ancora visitato C
Storico della frontiera: [B, A, D, E, A, C, E, G, C, E, F, C]
Ordine di visita dei nodi: [B, D, A, G, E, F]
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 5 | D | SI | |
B | 0 |   | SI | |
C | 13 | G |   | X |
D | 1 | B | SI | |
E | 9 | B | SI | |
F | 10 | G | SI | |
G | 7 | A | SI | |
Estrazione del nodo C
a distanza minima 13
Visita del nodo C
Storico della frontiera: [B, A, D, E, A, C, E, G, C, E, F, C]
Ordine di visita dei nodi: [B, D, A, G, E, F, C]
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 5 | D | SI | |
B | 0 |   | SI | |
C | 13 | G | SI | X |
D | 1 | B | SI | |
E | 9 | B | SI | |
F | 10 | G | SI | |
G | 7 | A | SI | |
Estrazione del nodo C
a distanza minima 13
Il nodo C è già stato visitato, quindi lo ignoro
Elaborazione di un nodo avente distanza minima, estratto dalla frontiera
Tabella:
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 5 | D | SI | |
B | 0 |   | SI | |
C | 13 | G | SI | X |
D | 1 | B | SI | |
E | 9 | B | SI | |
F | 10 | G | SI | |
G | 7 | A | SI | |
Estrazione del nodo C
a distanza minima 13
Il nodo C è già stato visitato, quindi lo ignoro
Distanze minime dei nodi e relativi predecessori
Nodo | Distanza | Predecessore | Visitato | Frontiera |
A | 5 | D | SI | |
B | 0 |   | SI | |
C | 13 | G | SI | |
D | 1 | B | SI | |
E | 9 | B | SI | |
F | 10 | G | SI | |
G | 7 | A | SI | |
Percorsi a costo minimo dal nodo B
B -> D -> A (5)
B -> D -> A -> G -> C (13)
B -> D (1)
B -> E (9)
B -> D -> A -> G -> F (10)
B -> D -> A -> G (7)
Storico della frontiera
[B, A, D, E, A, C, E, G, C, E, F, C]
Ordine di visita dei nodi
[B, D, A, G, E, F, C]