示例#1
0
        public static Nodo siguienteEnCircuito(Nodo actual, List <Arista> recorridas)
        {
            Nodo siguiente;

            siguiente = null;
            foreach (Arista arista in actual.Aristas)
            {
                if (!MetodosAuxiliares.aristaEnLista(arista, recorridas))
                {
                    siguiente = arista.Arriba;
                }
            }
            return(siguiente);
        }
示例#2
0
        public static Nodo siguienteEnCaminoDir(Nodo actual, List <Arista> recorridas)
        {
            Nodo siguiente;
            int  gradoMayor;

            gradoMayor = -1;
            siguiente  = null;
            foreach (Arista arista in actual.Aristas)
            {
                if (!MetodosAuxiliares.aristaEnLista(arista, recorridas))
                {
                    if (arista.Arriba.GradoSalida >= gradoMayor)
                    {
                        siguiente  = arista.Arriba;
                        gradoMayor = arista.Arriba.GradoSalida;
                    }
                }
            }
            return(siguiente);
        }