SlideShare ist ein Scribd-Unternehmen logo
1 von 8
LISTAS
La lista enlazada es un TDA que nos permite almacenar datos de una forma
organizada, al igual que los vectores pero, a diferencia de estos, esta
estructura es dinámica, por lo que no tenemos que saber "a priori" los
elementos que puede contener.
En una lista enlazada, cada elemento apunta al siguiente excepto el último
que no tiene sucesor y el valor del enlace es null. Por ello los elementos
son registros que contienen el dato a almacenar y un enlace al
siguiente elemento. Los elementos de una lista, suelen recibir también
el nombre de nodos de la lista.
ESQUEMA DE UN NODO Y UNA LISTA ENLAZADA.
La lista enlazada es un TDA que nos permite almacenar datos de una forma
organizada, al igual que los vectores pero, a diferencia de estos, esta estructura es
dinámica, por lo que no tenemos que saber "a priori" los elementos que puede
contener.
Para que esta estructura sea un TDA lista enlazada, debe tener unos operadores
asociados que permitan la manipulación de los datos que contiene. Los
operadores básicos de una lista enlazada son:
Insertar: inserta un nodo con dato x en la lista, pudiendo realizarse esta inserción al
principio o final de la lista o bien en orden.
Eliminar: elimina un nodo de la lista, puede ser según la posición o por el dato.
Buscar: busca un elemento en la lista.
Localizar: obtiene la posición del nodo en la lista.
Vaciar: borra todos los elementos de la lista
Después de esta breve introducción, que sólo pretende servir como recordatorio,
pasaremos a ver cómo es la estructura GSList que, junto con el conjunto de
funciones que la acompañan, forman el TDA lista enlazada en GLib™.
PILAS
Las pilas y colas son estructuras de datos que se utilizan generalmente
para simplificar ciertas operaciones de programación.
Estas estructuras pueden implementarse mediante arrays o mediante
listas enlazadas
Las pilas son estructuras de datos que tienes dos operaciones básicas:
push (para insertar un elemento) y pop (para extraer un elemento). Su
característica fundamental es que al extraer se obtiene siempre el último elemento
que acaba de insertarse. Por esta razón también se conocen como
estructuras de datos LIFO (del inglés Last In First Out). Una posible
implementación mediante listas enlazadas sería insertando y extrayendo

siempre por el principio de la lista. Gracias a las pilas es posible el uso de la
recursividad (lo veremos en detalle en el tema siguiente). La variable que llama al
mismo procedimiento en el q está, habrá que guardarla así como el resto de
variables de la nueva llamada, para a la vuelta de la recursividad ir sacándolas,
esto es posible a la implementación de pilas.
COLAS
Las colas también son llamadas FIFO (First In First Out), que quiere decir
“el primero que entra es el primero que sale”.
Colas simples:
Se inserta por un sitio y se saca por otro, en el caso de la cola simple se
inserta por el final y se saca por el principio. Para gestionar este tipo de
cola hay que recordar siempre cual es el siguiente elemento que se va a
leer y cual es el último elemento que se ha introducido.
COLAS CIRCULARES:

En las colas circulares se considera que después del último elemento se
accede de nuevo al primero. De esta forma se reutilizan las posiciones
extraídas, el final de la cola es a su vez el principio, creándose un
circuito cerrado.
COLAS CON PRIORIDAD:
Las colas con prioridad se implementan mediante listas o arrays
ordenados. No nos interesa en este caso que salgan en el orden de
entrada sino con una prioridad que le asignemos. Puede darse el caso
que existan varios elementos con la misma prioridad, en este caso
saldrá primero aquel que primero llego (FIFO).

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (18)

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
ListasListas
Listas
 
Teoria de listas
Teoria de listasTeoria de listas
Teoria de listas
 
Listas y Pilas
Listas y PilasListas y Pilas
Listas y Pilas
 
Lista, pilas y colas
Lista, pilas y colasLista, pilas y colas
Lista, pilas y colas
 
Listas en C#
Listas en C#Listas en C#
Listas en C#
 
Pilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datosPilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datos
 
Diapositiva de l estructura de datos
Diapositiva de l estructura de datosDiapositiva de l estructura de datos
Diapositiva de l estructura de datos
 
Colas Circulares
Colas CircularesColas Circulares
Colas Circulares
 
Listas,pilas&colas yorka
Listas,pilas&colas yorkaListas,pilas&colas yorka
Listas,pilas&colas yorka
 
Estructura de datos Pilas, Colas y Listas.
Estructura de datos Pilas, Colas y Listas.Estructura de datos Pilas, Colas y Listas.
Estructura de datos Pilas, Colas y Listas.
 
Listas como estructura de datos..
Listas como estructura de datos..Listas como estructura de datos..
Listas como estructura de datos..
 
Listas
ListasListas
Listas
 
Importancia de las listas Estructura de datos.
Importancia de las listas Estructura de datos.Importancia de las listas Estructura de datos.
Importancia de las listas Estructura de datos.
 
Tda y heaps
Tda y heapsTda y heaps
Tda y heaps
 
Lista simple
Lista simpleLista simple
Lista simple
 
Listas
ListasListas
Listas
 
Unidad 3 estructuras lineales estaticas y dinamicas
Unidad 3 estructuras lineales estaticas y dinamicasUnidad 3 estructuras lineales estaticas y dinamicas
Unidad 3 estructuras lineales estaticas y dinamicas
 

Ähnlich wie Lista, pilas y colas

Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colaslabarra90
 
Listas c#
Listas c#Listas c#
Listas c#rezzaca
 
Unidad tres estructura de datos
Unidad tres estructura de datosUnidad tres estructura de datos
Unidad tres estructura de datosRené Sosa Arana
 
Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314Edward Mejia Gomez
 
Estructura de dato unidad 3
Estructura de dato unidad 3Estructura de dato unidad 3
Estructura de dato unidad 3lenithoz
 
Listas, pilas & colas
Listas, pilas & colasListas, pilas & colas
Listas, pilas & colasjorgeluis0317
 
Lista,pilas y columnas
Lista,pilas y columnasLista,pilas y columnas
Lista,pilas y columnaskety24
 
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
 
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
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datoscharlezgt
 
listas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdflistas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdfLuisAGuarata
 
Listas pilas colas_carlos_rosario10-1337
Listas pilas colas_carlos_rosario10-1337Listas pilas colas_carlos_rosario10-1337
Listas pilas colas_carlos_rosario10-1337CJrosario2
 
Presentacion (listas, pilas & colas)
Presentacion (listas, pilas & colas)Presentacion (listas, pilas & colas)
Presentacion (listas, pilas & colas)dionis166
 

Ähnlich wie Lista, pilas y colas (20)

Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colas
 
Estructuras lineales
Estructuras linealesEstructuras lineales
Estructuras lineales
 
Darwin rodriguez 12-0861_pilasy_colas
Darwin rodriguez 12-0861_pilasy_colasDarwin rodriguez 12-0861_pilasy_colas
Darwin rodriguez 12-0861_pilasy_colas
 
Listas c#
Listas c#Listas c#
Listas c#
 
Unidad tres estructura de datos
Unidad tres estructura de datosUnidad tres estructura de datos
Unidad tres estructura de datos
 
Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314
 
Estructura de dato unidad 3
Estructura de dato unidad 3Estructura de dato unidad 3
Estructura de dato unidad 3
 
Listas, pilas & colas
Listas, pilas & colasListas, pilas & colas
Listas, pilas & colas
 
Lista,pilas y columnas
Lista,pilas y columnasLista,pilas y columnas
Lista,pilas y columnas
 
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
 
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
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
listas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdflistas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdf
 
Listas pilas colas_carlos_rosario10-1337
Listas pilas colas_carlos_rosario10-1337Listas pilas colas_carlos_rosario10-1337
Listas pilas colas_carlos_rosario10-1337
 
Listas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de DatosListas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de Datos
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Presentacion (listas, pilas & colas)
Presentacion (listas, pilas & colas)Presentacion (listas, pilas & colas)
Presentacion (listas, pilas & colas)
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 

Lista, pilas y colas

  • 1.
  • 2. LISTAS La lista enlazada es un TDA que nos permite almacenar datos de una forma organizada, al igual que los vectores pero, a diferencia de estos, esta estructura es dinámica, por lo que no tenemos que saber "a priori" los elementos que puede contener. En una lista enlazada, cada elemento apunta al siguiente excepto el último que no tiene sucesor y el valor del enlace es null. Por ello los elementos son registros que contienen el dato a almacenar y un enlace al siguiente elemento. Los elementos de una lista, suelen recibir también el nombre de nodos de la lista.
  • 3. ESQUEMA DE UN NODO Y UNA LISTA ENLAZADA. La lista enlazada es un TDA que nos permite almacenar datos de una forma organizada, al igual que los vectores pero, a diferencia de estos, esta estructura es dinámica, por lo que no tenemos que saber "a priori" los elementos que puede contener. Para que esta estructura sea un TDA lista enlazada, debe tener unos operadores asociados que permitan la manipulación de los datos que contiene. Los operadores básicos de una lista enlazada son: Insertar: inserta un nodo con dato x en la lista, pudiendo realizarse esta inserción al principio o final de la lista o bien en orden. Eliminar: elimina un nodo de la lista, puede ser según la posición o por el dato. Buscar: busca un elemento en la lista. Localizar: obtiene la posición del nodo en la lista. Vaciar: borra todos los elementos de la lista Después de esta breve introducción, que sólo pretende servir como recordatorio, pasaremos a ver cómo es la estructura GSList que, junto con el conjunto de funciones que la acompañan, forman el TDA lista enlazada en GLib™.
  • 4. PILAS Las pilas y colas son estructuras de datos que se utilizan generalmente para simplificar ciertas operaciones de programación. Estas estructuras pueden implementarse mediante arrays o mediante listas enlazadas
  • 5. Las pilas son estructuras de datos que tienes dos operaciones básicas: push (para insertar un elemento) y pop (para extraer un elemento). Su característica fundamental es que al extraer se obtiene siempre el último elemento que acaba de insertarse. Por esta razón también se conocen como estructuras de datos LIFO (del inglés Last In First Out). Una posible implementación mediante listas enlazadas sería insertando y extrayendo siempre por el principio de la lista. Gracias a las pilas es posible el uso de la recursividad (lo veremos en detalle en el tema siguiente). La variable que llama al mismo procedimiento en el q está, habrá que guardarla así como el resto de variables de la nueva llamada, para a la vuelta de la recursividad ir sacándolas, esto es posible a la implementación de pilas.
  • 6. COLAS Las colas también son llamadas FIFO (First In First Out), que quiere decir “el primero que entra es el primero que sale”. Colas simples: Se inserta por un sitio y se saca por otro, en el caso de la cola simple se inserta por el final y se saca por el principio. Para gestionar este tipo de cola hay que recordar siempre cual es el siguiente elemento que se va a leer y cual es el último elemento que se ha introducido.
  • 7. COLAS CIRCULARES: En las colas circulares se considera que después del último elemento se accede de nuevo al primero. De esta forma se reutilizan las posiciones extraídas, el final de la cola es a su vez el principio, creándose un circuito cerrado.
  • 8. COLAS CON PRIORIDAD: Las colas con prioridad se implementan mediante listas o arrays ordenados. No nos interesa en este caso que salgan en el orden de entrada sino con una prioridad que le asignemos. Puede darse el caso que existan varios elementos con la misma prioridad, en este caso saldrá primero aquel que primero llego (FIFO).