SlideShare una empresa de Scribd logo
1 de 16
Unidad 3
Listas
Alumno: Jorge Magdaleno Rodela
S.I. 401
Definición de listas en java
Una lista es una secuencia de elementos dispuesto en un cierto orden, en
la que cada elemento tiene como mucho un predecesor y un sucesor. El
número de elementos de la lista no suele estar fijado, ni suele estar limitado
por anticipado. Representaremos la estructura de datos de forma gráfica
con cajas y flechas. Las cajas son los elementos y las flechas simbolizan el
orden de los elementos.
› La estructura de datos deberá permitirnos determinar cuál es el primer elemento y el último de la
estructura, cuál es su predecesor y su sucesor (si existen de cualquier elemento dado). Cada uno de
los elementos de información suele denominarse nodo.
Características:
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.
Terminología
Asignación dinámica de memoria
Para crear y mantener estructuras dinámicas de datos se
requiere la asignación dinámica de memoria; la
habilidad
para que un programa obtenga más espacio de memoria
en tiempo de ejecución, para almacenar nuevos
nodos y para liberar el espacio que ya no se necesita.
Recuerde que los programas de Java no liberan
explícitamente
la memoria asignada en forma dinámica. En vez de
ello,Java realiza la recolección automática de
basura en los
objetos que ya no son referenciados en un programa.
Terminología
› Listas Enlazadas:
Una lista enlazada es una colección lineal
(es decir, una secuencia) de objetos de una
clase autoreferenciada, conocidos como
nodos, que están conectados por enlaces
de referencia; es por ello que se utiliza el
término lista “enlazada”. Por lo general, un
programa accede a una lista enlazada
mediante una referencia al primer nodo en
a lista. El programa accede a cada nodo
subsiguiente a través de la referencia de
enlace almacenada en el nodo anterior. Por
convención, la referencia de enlace en el
último nodo de una lista se establece en
null. Los datos se almacenan en forma
dinámica en una lista enlazada; el
programa crea cada nodo según sea
necesario. Un nodo puede contener datos
de cualquier tipo, incluyendo referencias a
objetos de otras clases.
3.2 Tipos de listas:
Simples
› 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.
Listas bidireccionales
(doblemente enlazadas).
› Una lista se dice que es bidireccional o doblemente enlazada cuando, para cada uno de
los elementos que la forman, existe una referencia al elemento anterior y otra al
elemento siguiente dentro de la estructura. Gracias a esta estructura, se puede recorrer
la lista en ambos sentidos. En la implementación de este tipo de listas hay que
considerar dos situaciones
› particulares:
› El elemento anterior al primero será el elemento nulo.
› El elemento siguiente al último será también el elemento nulo
Circulares:
› Listas circulares (anillos).
Se entiende por lista circular aquella en la que el último elemento de la lista
tiene definido un enlace al primer elemento de la lista. Desde un punto de vista
físico una lista circular por propia naturaleza no tiene principio ni fin. No
obstante, desde el punto de vista lógico, a referencia a la lista establece cómo
determinar la finalización de su recorrido tanto iterativo como recursivo.
3.3 Construcción y operaciones de listas:
Sintaxis
La clase ArrayList en Java, es una clase que permite almacenar datos en
memoria de forma similar a los Arrays, con la ventaja de que el numero de
elementos que almacena, lo hace de forma dinámica, es decir, que no es
necesario declarar su tamaño como pasa con los Arrays. Para todos aquellos que
hayáis estudiado en alguna asignatura las estructuras de datos de las Pilas,
Colas, Listas, Arboles (AVL, B, B+, B*) etc.
Operaciones:
Inserción
en una
lista
vacía
Inserción al inicio de la Lista
Inserción al final de la Lista
Inserción en otra parte de la lista
Inserción en otra parte de la lista
Eliminación de un elemento de la lista
Eliminación en otra parte de la lista

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Listas de adyacencia
Listas de adyacenciaListas de adyacencia
Listas de adyacencia
 
Estructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesEstructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no lineales
 
COLAS
COLASCOLAS
COLAS
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Estructura datos pilas y colas
Estructura datos pilas y colasEstructura datos pilas y colas
Estructura datos pilas y colas
 
Listas Enlazadas
Listas EnlazadasListas Enlazadas
Listas Enlazadas
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 
Programación 3: listas enlazadas
Programación 3: listas enlazadasProgramación 3: listas enlazadas
Programación 3: listas enlazadas
 
1.5.1 Representación en memoria estática y dinámica.pptx
1.5.1 Representación en memoria estática y dinámica.pptx1.5.1 Representación en memoria estática y dinámica.pptx
1.5.1 Representación en memoria estática y dinámica.pptx
 
Método de Búsqueda Hash
Método de Búsqueda HashMétodo de Búsqueda Hash
Método de Búsqueda Hash
 
colecciones en java
colecciones en javacolecciones en java
colecciones en java
 
Estructura de Datos - árboles y grafos
Estructura de Datos - árboles y grafosEstructura de Datos - árboles y grafos
Estructura de Datos - árboles y grafos
 
10. aplicaciones de las pilas
10. aplicaciones de las pilas10. aplicaciones de las pilas
10. aplicaciones de las pilas
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
conceptos de Punteros y Nodos
conceptos de Punteros y Nodosconceptos de Punteros y Nodos
conceptos de Punteros y Nodos
 
Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadas
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..
 
Listas Simples Enlazadas
Listas Simples EnlazadasListas Simples Enlazadas
Listas Simples Enlazadas
 
Búsqueda secuencial y binaria
Búsqueda secuencial y binariaBúsqueda secuencial y binaria
Búsqueda secuencial y binaria
 

Similar a Unidad 3 Listas Java

Similar a Unidad 3 Listas Java (20)

Listas c#
Listas c#Listas c#
Listas c#
 
Listas en C#
Listas en C#Listas en C#
Listas en C#
 
Unidad _ III
Unidad _ IIIUnidad _ III
Unidad _ III
 
Unidad III
Unidad IIIUnidad III
Unidad III
 
Unidad Iii
Unidad IiiUnidad Iii
Unidad Iii
 
Listas
ListasListas
Listas
 
Listas
ListasListas
Listas
 
listas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdflistas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdf
 
Unidad tres estructura de datos
Unidad tres estructura de datosUnidad tres estructura de datos
Unidad tres estructura de datos
 
LISTAS JAVA
LISTAS JAVALISTAS JAVA
LISTAS JAVA
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Listas
ListasListas
Listas
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
Estructura de dato unidad 3
Estructura de dato unidad 3Estructura de dato unidad 3
Estructura de dato unidad 3
 
Estructura de Datos. Listas. Concepto y Caracteristicas
Estructura de Datos. Listas. Concepto y CaracteristicasEstructura de Datos. Listas. Concepto y Caracteristicas
Estructura de Datos. Listas. Concepto y Caracteristicas
 
Lista, pilas y colas
Lista, pilas y colasLista, pilas y colas
Lista, pilas y colas
 
Lista, pilas y colas
Lista, pilas y colasLista, pilas y colas
Lista, pilas y colas
 
Presentacion de Listas, Pilas y Colas
Presentacion de Listas, Pilas y ColasPresentacion de Listas, Pilas y Colas
Presentacion de Listas, Pilas y Colas
 

Último

INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAdanielaerazok
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdflauradbernals
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webDecaunlz
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenajuniorcuellargomez
 
COMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfCOMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfOscarBlas6
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdfedwinmelgarschlink2
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfisrael garcia
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenadanielaerazok
 

Último (8)

INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
 
Guia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdfGuia para el registro en el sitio slideshare.pdf
Guia para el registro en el sitio slideshare.pdf
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la web
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalena
 
COMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfCOMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdf
 
12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf12 Clasificacion de las Computadoras.pdf
12 Clasificacion de las Computadoras.pdf
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalena
 

Unidad 3 Listas Java

  • 1. Unidad 3 Listas Alumno: Jorge Magdaleno Rodela S.I. 401
  • 2. Definición de listas en java Una lista es una secuencia de elementos dispuesto en un cierto orden, en la que cada elemento tiene como mucho un predecesor y un sucesor. El número de elementos de la lista no suele estar fijado, ni suele estar limitado por anticipado. Representaremos la estructura de datos de forma gráfica con cajas y flechas. Las cajas son los elementos y las flechas simbolizan el orden de los elementos. › La estructura de datos deberá permitirnos determinar cuál es el primer elemento y el último de la estructura, cuál es su predecesor y su sucesor (si existen de cualquier elemento dado). Cada uno de los elementos de información suele denominarse nodo.
  • 3. Características: 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.
  • 4. Terminología Asignación dinámica de memoria Para crear y mantener estructuras dinámicas de datos se requiere la asignación dinámica de memoria; la habilidad para que un programa obtenga más espacio de memoria en tiempo de ejecución, para almacenar nuevos nodos y para liberar el espacio que ya no se necesita. Recuerde que los programas de Java no liberan explícitamente la memoria asignada en forma dinámica. En vez de ello,Java realiza la recolección automática de basura en los objetos que ya no son referenciados en un programa.
  • 5. Terminología › Listas Enlazadas: Una lista enlazada es una colección lineal (es decir, una secuencia) de objetos de una clase autoreferenciada, conocidos como nodos, que están conectados por enlaces de referencia; es por ello que se utiliza el término lista “enlazada”. Por lo general, un programa accede a una lista enlazada mediante una referencia al primer nodo en a lista. El programa accede a cada nodo subsiguiente a través de la referencia de enlace almacenada en el nodo anterior. Por convención, la referencia de enlace en el último nodo de una lista se establece en null. Los datos se almacenan en forma dinámica en una lista enlazada; el programa crea cada nodo según sea necesario. Un nodo puede contener datos de cualquier tipo, incluyendo referencias a objetos de otras clases.
  • 6. 3.2 Tipos de listas: Simples › 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.
  • 7. Listas bidireccionales (doblemente enlazadas). › Una lista se dice que es bidireccional o doblemente enlazada cuando, para cada uno de los elementos que la forman, existe una referencia al elemento anterior y otra al elemento siguiente dentro de la estructura. Gracias a esta estructura, se puede recorrer la lista en ambos sentidos. En la implementación de este tipo de listas hay que considerar dos situaciones › particulares: › El elemento anterior al primero será el elemento nulo. › El elemento siguiente al último será también el elemento nulo
  • 8. Circulares: › Listas circulares (anillos). Se entiende por lista circular aquella en la que el último elemento de la lista tiene definido un enlace al primer elemento de la lista. Desde un punto de vista físico una lista circular por propia naturaleza no tiene principio ni fin. No obstante, desde el punto de vista lógico, a referencia a la lista establece cómo determinar la finalización de su recorrido tanto iterativo como recursivo.
  • 9. 3.3 Construcción y operaciones de listas: Sintaxis La clase ArrayList en Java, es una clase que permite almacenar datos en memoria de forma similar a los Arrays, con la ventaja de que el numero de elementos que almacena, lo hace de forma dinámica, es decir, que no es necesario declarar su tamaño como pasa con los Arrays. Para todos aquellos que hayáis estudiado en alguna asignatura las estructuras de datos de las Pilas, Colas, Listas, Arboles (AVL, B, B+, B*) etc.
  • 11. Inserción al inicio de la Lista
  • 12. Inserción al final de la Lista
  • 13. Inserción en otra parte de la lista
  • 14. Inserción en otra parte de la lista
  • 15. Eliminación de un elemento de la lista
  • 16. Eliminación en otra parte de la lista