private Arista encontrarArista(Vertice v_1, Vertice v_2) { for (int i = 0; i < v_1.getLista().Count; i++) { if (v_1.getLista()[i].getDestino().getID() == v_2.getID()) { return(v_1.getLista()[i]); } } return(null); }
private bool pertenece(Vertice vrt) { for (int i = 0; i < compConexos.Count; i++) { if (vrt.getID() == compConexos[i].getID()) { return(true); } } return(false); }
Arista encontrarVertice(Vertice v_1, Vertice v_2) { for (int i = 0; i < v_2.getLista().Count; i++) { if (v_1.getID() == v_2.getLista()[i].getDestino().getID()) { return(v_2.getLista()[i]); } } MessageBox.Show("Regresando null"); return(null); }
public List <Arista> ejecutarDFS() { bool flag = true; Vertice aux; aux = pila.Peek(); while (pila.Count != 0) { for (int i = 0; i < aux.getLista().Count; i++) { if (validos.Exists(x => x.getID() == aux.getLista()[i].getID())) { if (!visitados.Exists(x => x.getID() == aux.getLista()[i].getDestino().getID())) { pila.Push(aux); visitados.Add(aux); camino.Add(aux.getLista()[i]); aux = aux.getLista()[i].getDestino(); flag = false; break; } } } if (flag) { visitados.Add(aux); Vertice aux2 = pila.Pop(); if (aux.getID() != aux2.getID()) { camino.Add(encontrarArista(aux, aux2)); } aux = aux2; } else { flag = true; } } return(camino); }
bool actualizarAgentes() { for (int i = 0; i < aList.Count; i++) { if (!revisarSoluciones()) { MessageBox.Show("Ningún agente logró llegar"); return(false); } if (!aList[i].moverAgente()) { aList[i].setSolucion(false); } dibujarEspectro(aList[i].getListaCamino(), true); if (aList[i].getId() == objetivo.getID()) { return(false); } } return(true); }