Beispiel #1
0
        public Lista <Vertice <T> > GetListaPredecesores(string pVertice)
        {
            int index = ArregloDVertices.GetIndex(pVertice);

            if (index >= 0)
            {
                Lista <Vertice <T> > ListaVerticesPredecesores = new Lista <Vertice <T> >();
                for (int i = 0; i < MatrizDAdyacencias.GetLength(1); i++)
                {
                    if (MatrizDAdyacencias[index, i] != null)
                    {
                        ListaVerticesPredecesores.InsertarAlFinal(MatrizDAdyacencias[i, index].GetVertA());
                    }
                }
                return(ListaVerticesPredecesores);
            }
            return(null);
        }
Beispiel #2
0
        private Lista <Vertice <T> > GetListaSucesoresNoVisitados(string pVertice)
        {
            int index = ArregloDVertices.GetIndex(pVertice);

            if (index >= 0)
            {
                Lista <Vertice <T> > ListaVerticesSucesores = new Lista <Vertice <T> >();
                for (int i = 0; i < MatrizDAdyacencias.GetLength(1); i++)
                {
                    if (MatrizDAdyacencias[index, i] != null && !MatrizDAdyacencias[index, i].GetVertB().EsVisit)
                    {
                        ListaVerticesSucesores.InsertarAlFinal(MatrizDAdyacencias[index, i].GetVertB());
                    }
                }
                return(ListaVerticesSucesores);
            }
            return(null);
        }