示例#1
0
 public Lista_Ligada()
 {
     //Instanciamos el ancla
     ancla = new Nodito();
     //Cómo es una lista vacía, su siguiente es null
     ancla.setSiguiente(null);
 }
示例#2
0
        //Insertar valor al inicio
        public void insertarInicio(int valor)
        {
            Nodito dato = new Nodito();

            dato.setDato(valor);
            if (isEmpty())
            {
                Agregar(valor);
            }
            else
            {
                dato.setSiguiente(ancla.getSiguiente());
                ancla.setSiguiente(dato);
            }
        }
示例#3
0
        // Insertar un valor después de la primera ocurrencia del dato pasado a pDonde
        public void Insertar(int indiceInsercion, int valor)
        {
            // Encontramos la posición donde vamos a insertar
            trabajo = Buscar(indiceInsercion);
            if (trabajo == null)
            {
                return;
            }
            //Creamos el nodo temporal a insertar
            Nodito temporal = new Nodito();

            temporal.setDato(valor);
            //Conectamos el temporal a la lista
            temporal.setSiguiente(trabajo.getSiguiente());
            //Conectamos trabajo a temporal
            trabajo.setSiguiente(temporal);
        }
示例#4
0
        //Agregar nuevo elemento a la lista
        public void Agregar(int valor)
        {
            //Trabajo al Inicio
            trabajo = ancla;
            //Recorremos hasta encontrar el final
            while (trabajo.getSiguiente() != null)
            {
                //Avanzamos trabajo
                trabajo = trabajo.getSiguiente();
            }

            // Creamos el nuevo nodo
            Nodito temporal = new Nodito();

            //Insertemos el dato
            temporal.setDato(valor);
            //Finalizamos correctamente
            temporal.setSiguiente(null);
            //Ligamos el ultimo nodo encontrado con el recien creado
            trabajo.setSiguiente(temporal);
        }
示例#5
0
        //Borrar elemento de la lista
        public void borrarElemento(int valor)
        {
            //Verificamos que se tengan datos.
            if (isEmpty())
            {
                return;
            }
            // Buscamos los nodos con los que trabajaremos
            Nodito anterior   = getNoditoAnterior(valor);
            Nodito encontrado = Buscar(valor);

            // Si no hay nodo a borrar, salimos
            if (encontrado == null)
            {
                return;
            }
            //Brincamos el nodo
            anterior.setSiguiente(encontrado.getSiguiente());
            // Quitamos el actual de la lista.
            encontrado.setSiguiente(null);
        }
示例#6
0
 // Vaciar la lista
 public void Vaciar()
 {
     ancla.setSiguiente(null);
 }