YASMIN OMARI LÓPEZ ROBLES
*
*El uso de listas en Java es una forma útil de almacenar y
manipular grandes volúmenes de datos, tal como
haríamos en una matriz o arreglo, pero con una serie de
ventajas que hacen de este tipo de variables las
preferidas para el procesamiento de grandes cantidades
de información.
*Las listas en Java son variables que permiten almacenar
grandes cantidades de datos. Son similares a los Array o
a las Matrices.
1- Las listas enlazadas permiten
inserciones y eliminación de nodos en
cualquier punto de la lista en tiempo
constante, pero no permiten un acceso
aleatorio.
2- Existen diferentes tipos de listas
enlazadas: Listas enlazadas simples, listas
doblemente enlazadas, listas enlazadas
circulares y listas enlazadas doblemente
circulares.
3- Pueden ser implementadas en muchos
lenguajes. Lenguajes tales como Lisp y
Scheme tiene estructuras de datos ya
construidas, junto con operaciones para
acceder a las listas enlazadas. Lenguajes
imperativos u orientados a objetos tales
como C o C++ y Java, respectivamente,
disponen de referencias para crear listas
enlazadas.
Por lo general los elemntos de un arreglo están contiguos en
memoria.Esto permite un acceso inmediato .
Una lista enlazada con
varios nodos. Este
diagrama presenta
una lista de enlace
simple (cada nodo
contiene una
referencia al siguiente
nodo en la lista)
El último nodo de la lista no apunta a ningún a ninguno (null).
Se accede a la lista mediante el primer nodo o también llamado inicio de la lista.
No tiene acceso aleatorio es decir para acceder a un valor se debe recorrer toda la
lista.
Operaciones básicas:
agregar (valor): agrega el valor al final de
la lista.
insertar (referencia, valor): inserta el
valor después del valor de referencia en la
lista.
remover (referencia): elimina el nodo con
el valor que coincida con la referencia.
editar (referencia): actualiza el valor de
nodo con el valor que coincida con la
referencia.
esVacia (): retorna true si la lista está
vacía, false en caso contrario.
buscar (valor): retorna la true si el
elemento existe en la lista, false caso
contrario.
eliminar(): elimina la lista
listar (): imprime en pantalla los
elementos de la lista.
Como ejemplo pensemos que debemos
almacenar un menú de opciones en una lista,
la opción a seleccionar puede ser la siguiente o
la anterior, podemos desplazarnos en ambas
direcciones.
Representación gráfica de una lista
doblemente encadenada:
listas doblemente encadenadas
Listas Doblemente Enlazadas
A las listas vistas hasta el momento
podemos recorrerlas solamente en
una dirección (Listas simplemente
encadenadas). Hay problemas donde
se requiere recorrer la lista en ambas
direcciones, en estos casos el empleo
de listas doblemente encadenadas es
recomendable.
No existe ningún nodo que apunte a null.
La lista no tiene fin ya que al llegar al último nodo empieza de nuevo la lista.
Se accede a la lista mediante el primer nodo o también llamado inicio de la
lista.
Si no se tiene cuidado al manejar la lista circular se pueden crear bucles
infinitos.
No tiene acceso aleatorio es decir para acceder a un valor se debe recorrer
toda la lista
Unidad de listas
Unidad de listas
Unidad de listas
Unidad de listas

Unidad de listas

  • 1.
  • 2.
    *El uso delistas en Java es una forma útil de almacenar y manipular grandes volúmenes de datos, tal como haríamos en una matriz o arreglo, pero con una serie de ventajas que hacen de este tipo de variables las preferidas para el procesamiento de grandes cantidades de información. *Las listas en Java son variables que permiten almacenar grandes cantidades de datos. Son similares a los Array o a las Matrices.
  • 3.
    1- Las listasenlazadas permiten inserciones y eliminación de nodos en cualquier punto de la lista en tiempo constante, pero no permiten un acceso aleatorio. 2- Existen diferentes tipos de listas enlazadas: Listas enlazadas simples, listas doblemente enlazadas, listas enlazadas circulares y listas enlazadas doblemente circulares. 3- Pueden ser implementadas en muchos lenguajes. Lenguajes tales como Lisp y Scheme tiene estructuras de datos ya construidas, junto con operaciones para acceder a las listas enlazadas. Lenguajes imperativos u orientados a objetos tales como C o C++ y Java, respectivamente, disponen de referencias para crear listas enlazadas.
  • 4.
    Por lo generallos elemntos de un arreglo están contiguos en memoria.Esto permite un acceso inmediato . Una lista enlazada con varios nodos. Este diagrama presenta una lista de enlace simple (cada nodo contiene una referencia al siguiente nodo en la lista)
  • 5.
    El último nodode la lista no apunta a ningún a ninguno (null). Se accede a la lista mediante el primer nodo o también llamado inicio de la lista. No tiene acceso aleatorio es decir para acceder a un valor se debe recorrer toda la lista.
  • 6.
    Operaciones básicas: agregar (valor):agrega el valor al final de la lista. insertar (referencia, valor): inserta el valor después del valor de referencia en la lista. remover (referencia): elimina el nodo con el valor que coincida con la referencia. editar (referencia): actualiza el valor de nodo con el valor que coincida con la referencia. esVacia (): retorna true si la lista está vacía, false en caso contrario. buscar (valor): retorna la true si el elemento existe en la lista, false caso contrario. eliminar(): elimina la lista listar (): imprime en pantalla los elementos de la lista.
  • 7.
    Como ejemplo pensemosque debemos almacenar un menú de opciones en una lista, la opción a seleccionar puede ser la siguiente o la anterior, podemos desplazarnos en ambas direcciones. Representación gráfica de una lista doblemente encadenada: listas doblemente encadenadas Listas Doblemente Enlazadas A las listas vistas hasta el momento podemos recorrerlas solamente en una dirección (Listas simplemente encadenadas). Hay problemas donde se requiere recorrer la lista en ambas direcciones, en estos casos el empleo de listas doblemente encadenadas es recomendable.
  • 8.
    No existe ningúnnodo que apunte a null. La lista no tiene fin ya que al llegar al último nodo empieza de nuevo la lista. Se accede a la lista mediante el primer nodo o también llamado inicio de la lista. Si no se tiene cuidado al manejar la lista circular se pueden crear bucles infinitos. No tiene acceso aleatorio es decir para acceder a un valor se debe recorrer toda la lista