Пример #1
0
        public void eliminarNodo(Object nodoAEliminar)
        {
            NodoListaDoble nodo = (NodoListaDoble)nodoAEliminar;
            NodoListaDoble aux;

            if (nodo.getNodoAnterior() != null)
            {
                aux = nodo.getNodoAnterior();
                aux.setNodoSiguiente(nodo.getNodoSiguiente());

                if (nodo.getNodoSiguiente() != null)
                {
                    aux = nodo.getNodoSiguiente();
                    aux.setNodoAnterior(nodo.getNodoAnterior());
                }
                else
                {
                    Fin = aux;
                }
            }
            else if (nodo.getNodoSiguiente() != null)
            {
                aux = nodo.getNodoSiguiente();
                aux.setNodoAnterior(null);
                Inicio = aux;
            }
            else
            {
                Inicio = null;
                Fin    = null;
                Actual = null;
            }

            NumeroElementos--;
        }
Пример #2
0
        public void insertarAlFinal(Object objeto)
        {
            NodoListaDoble aux = new NodoListaDoble(objeto);

            if (Inicio == null)
            {
                Inicio = aux;
                Fin    = aux;
            }
            else
            {
                Fin.setNodoSiguiente(aux);
                aux.setNodoAnterior(Fin);
                Fin = aux;
            }
            NumeroElementos++;
        }
Пример #3
0
        // Esta función sirve para ayudar a recorrer la lista enlazada doble con objetos dinamicos
        // y que pueda ser reutilizable.
        public Object complementarRecorrido()
        {
            if (Actual == null)
            {
                Actual = Inicio;
            }
            else
            {
                Actual = Actual.getNodoSiguiente();
            }

            //eliminarNodo(Actual);
            if (Actual != null)
            {
                return(obtenerElemento(Actual));
            }
            else
            {
                return(null);
            }
        }
Пример #4
0
 public Object obtenerElemento(NodoListaDoble nodo)
 {
     return(nodo.getObjeto());
 }
Пример #5
0
 public void reiniciarActual()
 {
     Actual = null;
 }
Пример #6
0
 public ListaDoble()
 {
     Inicio = null;
     Fin    = null;
 }
Пример #7
0
 public void setNodoAnterior(NodoListaDoble nodo)
 {
     Ant = nodo;
 }
Пример #8
0
 public void setNodoSiguiente(NodoListaDoble nodo)
 {
     Sig = nodo;
 }
Пример #9
0
 public NodoListaDoble(Object objeto)
 {
     Ant = null;
     Obj = objeto;
     Sig = null;
 }