Questa lezione ha come obiettivo la reppresentazione di grafi pesati.
Seguire i seguenti passi implementativi:
graph G { 1 -- 3 [label = "3"]; 1 -- 4 [label = "5"]; 2 -- 3 [label = "7"]; 2 -- 4 [label = "9"]; }
digraph DG { 1 -> 3 [label = "3"]; 1 -> 4 [label = "5"]; 2 -> 3 [label = "7"]; 2 -> 4 [label = "9"]; }
Si consiglia di usare vettori estendibili (in particolare, la classe ArrayList<E>) quando non sono noti a priori il numero di nodi o il numero di archi del grafo (ad esempio in fase di lettura del grafo da file) oppure per grafi dinamici che possono essere estesi con nuovi nodi e nuovi archi. In tutti gli altri casi usare grafi statici, rappresentati mediante una matrice sfilacciata di interi (un vettore di vettori di dimensioni variabili). Quest'ultima rappresentazione risulta pił efficiente della soluzione dinamica.