SlideShare una empresa de Scribd logo
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

PPTX
Programación 3: listas enlazadas
PPT
Listas, pilas y colas
PPTX
Estructura de datos
PPTX
Metodos de ordenamiento
PDF
Estructura de datos : Cola
PPS
Pilas y colas
PPT
Estructura datos pilas y colas
PPTX
Tipos de listas en estructura de datos
Programación 3: listas enlazadas
Listas, pilas y colas
Estructura de datos
Metodos de ordenamiento
Estructura de datos : Cola
Pilas y colas
Estructura datos pilas y colas
Tipos de listas en estructura de datos

La actualidad más candente (20)

PPTX
Listas,pilas y colas Estructura de Datos
PPTX
Shell exposición
PPTX
Eficiencia de algoritmos - Vanessa Ramirez
DOCX
Metodos de-ordenamiento
DOCX
Teoria de listas
PDF
Estructura de Datos. Listas. Concepto y Caracteristicas
PPTX
Doubly linked list
PPTX
Insertion sort
PPTX
Searching
PDF
Algoritmos de Ordenamiento externo
PPTX
Diagramas estados
PPTX
1.1 tipos de datos abstractos
PDF
Uml clase 04_uml_clases
PPTX
Data Structures (CS8391)
PPT
PPTX
Listas Enlazadas
PDF
Java Linked List Tutorial | Edureka
PPTX
Estructura de Datos Unidad - V: Métodos de Ordenamiento
PPTX
UML - Casos de Uso y Diagramas de Clase
Listas,pilas y colas Estructura de Datos
Shell exposición
Eficiencia de algoritmos - Vanessa Ramirez
Metodos de-ordenamiento
Teoria de listas
Estructura de Datos. Listas. Concepto y Caracteristicas
Doubly linked list
Insertion sort
Searching
Algoritmos de Ordenamiento externo
Diagramas estados
1.1 tipos de datos abstractos
Uml clase 04_uml_clases
Data Structures (CS8391)
Listas Enlazadas
Java Linked List Tutorial | Edureka
Estructura de Datos Unidad - V: Métodos de Ordenamiento
UML - Casos de Uso y Diagramas de Clase
Publicidad

Similar a Unidad 3 Listas Java (20)

DOCX
Listas c#
DOCX
Listas en C#
PPTX
Unidad _ III
PPTX
Unidad III
PPTX
Unidad Iii
 
PPTX
PPTX
PDF
listas Luis Guarata 31332901.pdf
PPTX
Unidad tres estructura de datos
PPTX
LISTAS JAVA
PPTX
Unidad 3
PPTX
PPTX
Listas, pilas y colas
PPTX
Estructura de datos
PPTX
Estructura de datos
PPTX
Estructura de dato unidad 3
PPTX
Lista, pilas y colas
PPTX
Lista, pilas y colas
PPTX
Presentacion de Listas, Pilas y Colas
Listas c#
Listas en C#
Unidad _ III
Unidad III
Unidad Iii
 
listas Luis Guarata 31332901.pdf
Unidad tres estructura de datos
LISTAS JAVA
Unidad 3
Listas, pilas y colas
Estructura de datos
Estructura de datos
Estructura de dato unidad 3
Lista, pilas y colas
Lista, pilas y colas
Presentacion de Listas, Pilas y Colas
Publicidad

Último (11)

PPTX
Presentación de un estudio de empresa pp
PPTX
FUNCIONES DE CLASSROOM EN EL FUNCIONAMIENTO ESCOLAR
PDF
CAPACITACIÓN MIPIG - MODELO INTEGRADO DE PLANEACIÓN Y GESTIÓN
PDF
Frases de Fidel Castro. Compilación Norelys Morales Aguilera
PPT
laser seguridad a la salud humana de piel y vision en laser clase 4
PDF
Mesopotamia y Egipto.pptx.pdf historia universal
PDF
Herramientaa de google google keep, maps.pdf
PPTX
tema-2-interes-.pptx44444444444444444444
PDF
[Ebook gratuito] Introducción a la IA Generativa, Instalación y Configuración...
PPTX
Guia de power bi de cero a avanzado detallado
PPTX
presentacion_energias_renovables_renovable_.pptx
Presentación de un estudio de empresa pp
FUNCIONES DE CLASSROOM EN EL FUNCIONAMIENTO ESCOLAR
CAPACITACIÓN MIPIG - MODELO INTEGRADO DE PLANEACIÓN Y GESTIÓN
Frases de Fidel Castro. Compilación Norelys Morales Aguilera
laser seguridad a la salud humana de piel y vision en laser clase 4
Mesopotamia y Egipto.pptx.pdf historia universal
Herramientaa de google google keep, maps.pdf
tema-2-interes-.pptx44444444444444444444
[Ebook gratuito] Introducción a la IA Generativa, Instalación y Configuración...
Guia de power bi de cero a avanzado detallado
presentacion_energias_renovables_renovable_.pptx

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