In un aeroporto vi sono n gate, ciascuno dei quali è individuato da un codice
I gate possono essere collegati tra loro per mezzo di corridoi bidirezionali ciascuno avente un certo costo di manutenzione. (il costo di manutenzione rappresenta il peso dell’arco)
ipotizzare un funzionamento a regime):
funzione “risparmio della spesa” che restituisce se esiste l’elenco minimo dei corridoi da lasciare attivi per garantire che tutti i gate siano raggiungibili da ogni altro gate e tale da assicurare un costo minimo di manutenzione totale.
inizio risoluzione:
public class gate{
protected String codice;
public gate(String codice){
this.codice=codice;
}
}
public class aereoporto {
private GrafoNOLP G;
private Vettass<gate> v;
public aereoporto(int n){
G=new GrafoNOLP(n);
v=new Vettass<gate>(n);
}
public LinkedList<Arco> risparmioSpesa(){
LinkedList<Arco>L=new LinkedList();
.
.
.
return L;
}
}
essendo che mi viene richiesto il costo di trasferimento minimo, cioè il peso minimo,mi verrebbe in mente di usare Dijkstra…pero non saprei come fare a ricavarmi gli archi da non cancellare e da fare rimanere attivi…
per quanto riguardava di fatto di essere raggiungibili da ogni altro gate, pensavo di usare la funzione esisteCammmino, ciclando i nodi del grafo attraverso un ciclo for annidato…
è un po tutto campato in aria, ma non chiedo la risoluzione anche se sarebbe ben accetta, ma qualche idea che mi chiarisca come fare..