private void factible(ElementoDijkstra aux)
        {
            int total = 0;

            for (int i = 0; i < aux.getActual().getLista().Count; i++)
            {
                total += aux.getPeso() + aux.getActual().getLista()[i].getPonderacion();
                //aux.getActual().getLista()[i]
                if (total < candidatos[aux.getActual().getLista()[i].getDestino().getID() - 1].getPeso())
                {
                    candidatos[aux.getActual().getLista()[i].getDestino().getID() - 1].setPeso(total);
                    candidatos[aux.getActual().getLista()[i].getDestino().getID() - 1].setProveniente(aux.getActual());
                }
                total = 0;
            }
        }
        public ElementoDijkstra seleccion()
        {
            ElementoDijkstra auxiliar = new ElementoDijkstra(infinito + 1, null);
            int j = -1;

            for (int i = 0; i < candidatos.Count; i++)
            {
                if (!candidatos[i].getDefinitivo())
                {
                    if (candidatos[i].getPeso() < auxiliar.getPeso())
                    {
                        auxiliar = candidatos[i];
                        j        = i;
                    }
                }
            }
            candidatos[j].setDefinitivo(true);
            return(auxiliar);
        }