SlideShare una empresa de Scribd logo
1 de 11
Gabriely Peña
C.I: 23903149
LISTA ENCADENADA
Definición: Una lista encadenada es una lista implementada mediante una
estructura doblemente encadenada. En este tipo de implementación una lista
es representada con un campo en el que se guarda la longitud, otro con un
apuntador al primer nodo de la lista y un campo con un apuntador al último
nodo de la lista. En cada nodo de la lista se guarda el elemento, un
apuntador al nodo anterior y un apuntador al siguiente nodo. En el caso del
último nodo de la lista el apuntador al siguiente nodo es nulo y para el caso
del primer nodo de la lista el apuntador al nodo anterior es nulo.
La complejidad de la búsqueda en el peor caso en este tipo de estructuras es
O(n), donde n es la longitud de la lista.
LISTA ENLAZADA
Definición: consiste en una secuencia de nodos, en los que se guardan
campos de datos arbitrarios y una de dos referencias al nodo
anterior y/o posterior.
Cabeza: al primer nodo de una lista enlazada
Fin: al ultimo nodo de una lista enlazada
TIPOS DE LISTAS ENLAZADAS
- Listas simples enlazadas: tiene un enlace por nodo. Este enlace apunta al
siguiente nodo en la lista, o al valor nulo o lista vacia, si es el ultimo nodo.
- LISTA DOBLEMENTE ENLAZADAS:
cada nodo tiene dos enlaces: uno apunta al nodo anterior, o apunta al valor Nulo
o la lista vacia si es el primer nodo; y otro que apunta al valor Nulo o la luista
vacia si es el ultimo nodo.
LISTAS ENLAZADAS CIRCULARES:
-en una lista enlazada circular, el primer y el ultimo nodo están unidos. Para
recorrer una lista enlazada circular podemos empezar por cualquier nodo y
seguir la lista en cualquier dirección
hasta que se regrese al nodo original.
- LISTAS ENLAZADAS CIRCULARES SIMPLES:
Cada nodo tiene un enlace, análogo al de las listas enlazadas simples, la
diferencia está en que el siguiente nodo del último apunta al primero.
- Listas enlazadas doblemente circular: En una lista circular
doblemente enlazada, cada nodo tiene dos enlaces, análogamente a la
lista doblemente enlazada lineal, el cambio radica en que el enlace
anterior del primer nodo apunta al último y el enlace siguiente del último
nodo, apunta al primero.
OBJETIVOS:
- El principal beneficio de las listas enlazadas respecto a los arreglos
convencionales es que el orden de los elementos enlazados puede ser
diferente al orden de almacenamiento en memoria o el disco, permitiendo
que el orden de recorrido de la lista diferente al de almacenamiento.
- 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.
Ventajas:
- Los elementos se pueden insertar en una lista indefinidamente mientras que
en un arreglo tarde o temprano se llenara o necesitara ser redimensionado,
una costosa operación que incluso puede ser no ser posible si la memoria se
encuentra fragmentada.
Desventajas:
- las listas son de acceso secuencial, y solo puede ser recorridas en una
dirección.
- El acceso secuencial es más lento en las listas.
- Se requiere de almacenamiento extra para las referencias.
- Puede resultar lento asignar memoria para cada nuevo elemento.
LAS LISTAS
P: puntero a un nodo
L: puntero a la lista
ListaVacia(L): Iniciliza la lista L, como lista vacía
empty(L): determina si la lista está vacía o no
Insertar(L, x, p): Inserta al dato x, en un nuevo nodo de la lista L,
después del nodo apuntado por p
eliminar(L, x): elimina, de la lista L, el nodo que contiene a x
.
Nodo(p): Hace referencia la nodo que apunta p
Info(p): hace referencia al info del nodo
next(p): siguiente dirección si p no es NULL
Info(next(p)): info del nodo que sigue a nodo (p) en la lista
Se puede decir que, estas son las operaciones básicas para una lista; sin
embargo, como ya se ha insistido, eso dependerá del programador y de la
complejidad del problema que se está resolviendo, además del tipo de lista
que se haya elegido

Más contenido relacionado

La actualidad más candente (20)

Estructura de datos I pilas
Estructura de datos I pilasEstructura de datos I pilas
Estructura de datos I pilas
 
Arboles
Arboles Arboles
Arboles
 
Insertar elementos en una cola
Insertar elementos en una colaInsertar elementos en una cola
Insertar elementos en una cola
 
Estructuras dinámicas
Estructuras dinámicasEstructuras dinámicas
Estructuras dinámicas
 
Listas Pilas Colas
Listas Pilas ColasListas Pilas Colas
Listas Pilas Colas
 
Colas estáticas. IESIT
Colas estáticas. IESITColas estáticas. IESIT
Colas estáticas. IESIT
 
Arboles Binarios
Arboles BinariosArboles Binarios
Arboles Binarios
 
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
 
conceptos de Punteros y Nodos
conceptos de Punteros y Nodosconceptos de Punteros y Nodos
conceptos de Punteros y Nodos
 
Listas
ListasListas
Listas
 
DSA Lab Manual C Scheme.pdf
DSA Lab Manual C Scheme.pdfDSA Lab Manual C Scheme.pdf
DSA Lab Manual C Scheme.pdf
 
Listas Doblemente Enlazadas y Listas Circulares
Listas Doblemente Enlazadas y Listas CircularesListas Doblemente Enlazadas y Listas Circulares
Listas Doblemente Enlazadas y Listas Circulares
 
Stack, Queue, Linked List.pptx
Stack, Queue, Linked List.pptxStack, Queue, Linked List.pptx
Stack, Queue, Linked List.pptx
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 
Listas Encadenadas Jose Tannous
Listas Encadenadas Jose TannousListas Encadenadas Jose Tannous
Listas Encadenadas Jose Tannous
 
Combinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablasCombinacion de consultas y consultas multitablas
Combinacion de consultas y consultas multitablas
 
Arboles ppt
Arboles pptArboles ppt
Arboles ppt
 
PostgreSQL - Lección 9 - Tablas
PostgreSQL - Lección 9 - TablasPostgreSQL - Lección 9 - Tablas
PostgreSQL - Lección 9 - Tablas
 
Arboles B y Arboles B+
Arboles B y Arboles B+Arboles B y Arboles B+
Arboles B y Arboles B+
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
 

Destacado

Listas enlazadas doble exposicion
Listas enlazadas doble exposicionListas enlazadas doble exposicion
Listas enlazadas doble exposicionjcum1
 
Lista Doblemente Enlazada
Lista Doblemente EnlazadaLista Doblemente Enlazada
Lista Doblemente Enlazadayordy Macoto
 
Estructura de Datos, Multilistas
Estructura de Datos, MultilistasEstructura de Datos, Multilistas
Estructura de Datos, MultilistasCristhian Rosales
 
Estructuras dinamicas ppt
Estructuras dinamicas pptEstructuras dinamicas ppt
Estructuras dinamicas pptAby Castillo
 
Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasElias Peña
 

Destacado (9)

Listas doblemente enlazadas
Listas doblemente enlazadasListas doblemente enlazadas
Listas doblemente enlazadas
 
Tipos de listas en estructura de datos
Tipos de listas en estructura de datosTipos de listas en estructura de datos
Tipos de listas en estructura de datos
 
Listas enlazadas doble exposicion
Listas enlazadas doble exposicionListas enlazadas doble exposicion
Listas enlazadas doble exposicion
 
Lista Doblemente Enlazada
Lista Doblemente EnlazadaLista Doblemente Enlazada
Lista Doblemente Enlazada
 
Estructura de Datos, Multilistas
Estructura de Datos, MultilistasEstructura de Datos, Multilistas
Estructura de Datos, Multilistas
 
Listas
ListasListas
Listas
 
Estructuras dinamicas ppt
Estructuras dinamicas pptEstructuras dinamicas ppt
Estructuras dinamicas ppt
 
Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colas
 
Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadas
 

Similar a Estructura de datos_Listas encadenadas presentacion

Similar a Estructura de datos_Listas encadenadas presentacion (20)

Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadas
 
Ensayo implementacion listas
Ensayo implementacion listasEnsayo implementacion listas
Ensayo implementacion listas
 
Unidad iii
Unidad iiiUnidad iii
Unidad iii
 
Unidad iii Listas
Unidad iii ListasUnidad iii Listas
Unidad iii Listas
 
Listas (java)
Listas (java)Listas (java)
Listas (java)
 
Listas java
Listas javaListas java
Listas java
 
Teoria de listas
Teoria de listasTeoria de listas
Teoria de listas
 
Unidad III
Unidad IIIUnidad III
Unidad III
 
Unidad Iii
Unidad IiiUnidad Iii
Unidad Iii
 
Unidad _ III
Unidad _ IIIUnidad _ III
Unidad _ III
 
universidad F. T.
universidad F. T.universidad F. T.
universidad F. T.
 
Implementación-de-pilas-por-medio-de-listas.pptx
Implementación-de-pilas-por-medio-de-listas.pptxImplementación-de-pilas-por-medio-de-listas.pptx
Implementación-de-pilas-por-medio-de-listas.pptx
 
1.3.1 Tipos de Listas.pptx
1.3.1 Tipos de Listas.pptx1.3.1 Tipos de Listas.pptx
1.3.1 Tipos de Listas.pptx
 
Listas c#
Listas c#Listas c#
Listas c#
 
Programación 3: listas enlazadas
Programación 3: listas enlazadasProgramación 3: listas enlazadas
Programación 3: listas enlazadas
 
listas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdflistas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdf
 
Listas en C#
Listas en C#Listas en C#
Listas en C#
 
Listas,pilas&colas yorka
Listas,pilas&colas yorkaListas,pilas&colas yorka
Listas,pilas&colas yorka
 
Analisis del cap 8
Analisis del cap 8Analisis del cap 8
Analisis del cap 8
 
Analisis del cap 8
Analisis del cap 8Analisis del cap 8
Analisis del cap 8
 

Estructura de datos_Listas encadenadas presentacion

  • 2. LISTA ENCADENADA Definición: Una lista encadenada es una lista implementada mediante una estructura doblemente encadenada. En este tipo de implementación una lista es representada con un campo en el que se guarda la longitud, otro con un apuntador al primer nodo de la lista y un campo con un apuntador al último nodo de la lista. En cada nodo de la lista se guarda el elemento, un apuntador al nodo anterior y un apuntador al siguiente nodo. En el caso del último nodo de la lista el apuntador al siguiente nodo es nulo y para el caso del primer nodo de la lista el apuntador al nodo anterior es nulo. La complejidad de la búsqueda en el peor caso en este tipo de estructuras es O(n), donde n es la longitud de la lista.
  • 3. LISTA ENLAZADA Definición: consiste en una secuencia de nodos, en los que se guardan campos de datos arbitrarios y una de dos referencias al nodo anterior y/o posterior. Cabeza: al primer nodo de una lista enlazada Fin: al ultimo nodo de una lista enlazada
  • 4. TIPOS DE LISTAS ENLAZADAS - Listas simples enlazadas: tiene un enlace por nodo. Este enlace apunta al siguiente nodo en la lista, o al valor nulo o lista vacia, si es el ultimo nodo.
  • 5. - LISTA DOBLEMENTE ENLAZADAS: cada nodo tiene dos enlaces: uno apunta al nodo anterior, o apunta al valor Nulo o la lista vacia si es el primer nodo; y otro que apunta al valor Nulo o la luista vacia si es el ultimo nodo.
  • 6. LISTAS ENLAZADAS CIRCULARES: -en una lista enlazada circular, el primer y el ultimo nodo están unidos. Para recorrer una lista enlazada circular podemos empezar por cualquier nodo y seguir la lista en cualquier dirección hasta que se regrese al nodo original.
  • 7. - LISTAS ENLAZADAS CIRCULARES SIMPLES: Cada nodo tiene un enlace, análogo al de las listas enlazadas simples, la diferencia está en que el siguiente nodo del último apunta al primero. - Listas enlazadas doblemente circular: En una lista circular doblemente enlazada, cada nodo tiene dos enlaces, análogamente a la lista doblemente enlazada lineal, el cambio radica en que el enlace anterior del primer nodo apunta al último y el enlace siguiente del último nodo, apunta al primero.
  • 8. OBJETIVOS: - El principal beneficio de las listas enlazadas respecto a los arreglos convencionales es que el orden de los elementos enlazados puede ser diferente al orden de almacenamiento en memoria o el disco, permitiendo que el orden de recorrido de la lista diferente al de almacenamiento. - 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.
  • 9. Ventajas: - Los elementos se pueden insertar en una lista indefinidamente mientras que en un arreglo tarde o temprano se llenara o necesitara ser redimensionado, una costosa operación que incluso puede ser no ser posible si la memoria se encuentra fragmentada. Desventajas: - las listas son de acceso secuencial, y solo puede ser recorridas en una dirección. - El acceso secuencial es más lento en las listas. - Se requiere de almacenamiento extra para las referencias. - Puede resultar lento asignar memoria para cada nuevo elemento.
  • 10. LAS LISTAS P: puntero a un nodo L: puntero a la lista ListaVacia(L): Iniciliza la lista L, como lista vacía empty(L): determina si la lista está vacía o no Insertar(L, x, p): Inserta al dato x, en un nuevo nodo de la lista L, después del nodo apuntado por p eliminar(L, x): elimina, de la lista L, el nodo que contiene a x .
  • 11. Nodo(p): Hace referencia la nodo que apunta p Info(p): hace referencia al info del nodo next(p): siguiente dirección si p no es NULL Info(next(p)): info del nodo que sigue a nodo (p) en la lista Se puede decir que, estas son las operaciones básicas para una lista; sin embargo, como ya se ha insistido, eso dependerá del programador y de la complejidad del problema que se está resolviendo, además del tipo de lista que se haya elegido