예제 #1
0
        public LinkedList <NodoThomson> llenaListaLineal()
        {
            lista_lineal_nodos = new LinkedList <NodoThomson>();
            NodoThomson aux = this.Inicio;

            while (aux != null)
            {
                if (repetido(aux.GetEstado()) != true)
                {
                    lista_lineal_nodos.AddLast(aux);
                }

                if (aux.GetTipo().CompareTo("or") == 0)
                {// tengo otra lista hacia otro lado
                    if (aux.sig2 != null && repetido(aux.sig2.GetEstado()) != true)
                    {
                        llenaListaLineal(aux.sig2);
                    }
                }
                aux = aux.sig1;
            }


            return(lista_lineal_nodos);
        }
예제 #2
0
        public void imprimir()
        {
            int         x   = 1;
            NodoThomson aux = this.Inicio;


            while (aux != null)
            {
                if (aux.GetTipo().CompareTo("or") == 0)
                {// necesito imprimir por debajo
                    Console.WriteLine(x + "." + " ID: " + aux.GetEstado() + " nombrePuntero:" + aux.GetTranscision());
                    if (aux.sig2 != null)
                    {
                        imprimirPorDebajo(aux.sig2);
                    }
                }
                Console.WriteLine(x + "." + " ID: " + aux.GetEstado() + " nombrePuntero:" + aux.GetTranscision());
                x++;
                aux = aux.sig1;
            }
        }
예제 #3
0
 public void imprimirPorDebajo(NodoThomson aux)
 {
     while (aux.sig1.GetTipo().CompareTo("fin_or") != 0)
     {
         if (aux.GetTipo().CompareTo("or") == 0)
         {
             if (aux.sig2 != null)
             {
                 // imprimirPorDebajo(aux.sig2);
             }
         }
         Console.WriteLine("-->" + " ID: " + aux.GetEstado() + " nombrePuntero:" + aux.GetTranscision());
         aux = aux.sig1;
     }
 }
예제 #4
0
        public void llenaListaLineal(NodoThomson aux) // sobrecarga de metodo
        {
            while (aux != null)
            {
                if (repetido(aux.GetEstado()) != true)
                {
                    lista_lineal_nodos.AddLast(aux);
                }

                if (aux.GetTipo().CompareTo("or") == 0)
                {// tengo otra lista hacia otro lado
                    if (aux.sig2 != null && repetido(aux.sig2.GetEstado()) != true)
                    {
                        llenaListaLineal(aux.sig2);
                    }
                }
                aux = aux.sig1;
            }
        }