private void seleccionKruskal(Arista candidato, List <string> componentes, ListaArista arbolRM) { int borrar = -1; string origen, destino; origen = candidato.getOrigin().getCity().getName(); destino = candidato.getDestination().getCity().getName(); for (int i = 0; i < componentes.Count; i++) { if (componentes[i].Contains(origen)) { for (int j = 0; j < componentes.Count; j++) { if (componentes[j].Contains(destino)) { if (i != j) { borrar = j; componentes[i] += componentes[j]; arbolRM.Add(candidato); } } } } } if (borrar > -1) { componentes.RemoveAt(borrar); } }
private void inicializaCandidatos(ListaArista candidatos, int option) { foreach (Node node in graph.getNodeList()) { foreach (Adjacent ady in node.getAdjacentList()) { Arista arista = new Arista(); arista.setOrigin(node); arista.setDestination(ady.getNode()); if (option == 1) { arista.setCost(ady.getTime()); } else if (option == 2) { arista.setCost(ady.getCost()); } candidatos.Add(arista); } } }
public int compareTo(Arista compare) { return(cost.CompareTo(compare.cost)); }