SlideShare una empresa de Scribd logo
1 de 16
Estructuras de Datos
       Prof: Rina Familia
       Jorge Luis Maria ~ 10-1333
UNIVERSIDAD IBEROAMERICANA ~ UNIBE
Indicar objetos reales que se puedan modelar con dicha estructura
 Lista de ordenes
 Lista de patrones de cualquier entidad
 Lista de elementos

Presentar varias definiciones de la misma
- Una lista es una estructura de datos secuencial.
Una manera de clasificarlas es por la forma de acceder al siguiente
elemento:
- Lista densa: la propia estructura determina cuál es el siguiente
   elemento de la lista.
Ejemplo: un array.- Lista enlazada: la posición del siguiente elemento de
la estructura la determina el elemento actual. Es necesario almacenar al
menos la posición de memoria del primer elemento. Además es dinámica,
es decir, su tamaño cambia durante la ejecución del programa.
 Concepto:
Las Listas son secuencias de 0 o más elementos de un
tipo de datos almacenado en memoria. Son estructuras
lineales donde cada elemento de una lista excepto el
primero tiene un único predecesor y cada elemento de la
lista excepto el ultimo tiene un sucesor.
 Proponer un TAD que modele las LISTAS
 Nombre: TAD Lista
 Invariante: n/a
 Operaciones: crearLista()
*/ Devuelve un valor del tipo pila preparado para ser
usado y que contiene un valor de pila vacía. Esta
operación es la misma que la de las listas generales.*/
 Precondiciones: N=0
 Pos condiciones: Lista creada
 Relacionar el concepto de VENTANA con el de Lista
Una ventana es un área visual, normalmente de forma
rectangular, que contiene algún tipo de interfaz de
usuario, mostrando la salida y permitiendo la entrada de
datos para uno de varios procesos que se ejecutan
simultáneamente.
Y un Consiste en una secuencia de nodos, en los que se
guardan campos de datos arbitrarios y una o dos
referencias (punteros) al nodo anterior o posterior.
 Describir las implementaciones de Listas
Para representar en lenguaje C esta estructura de datos
se utilizarán punteros, un tipo de datos que suministra el
lenguaje. Se representará una lista vacía con la constante
NULL. Se puede definir la lista enlazada de la siguiente
manera:
struct lista
{
int clave;
struct lista *sig;
};
 e1.- Vectores
Utilizando una estructura de datos estática arreglo para
representar e implementar el TDA LISTAS. Asumamos
que los ELEMENTOS que contiene la LISTA son
representados por el tipo ENTERO. La cantidad de
ELEMENTOS que puede contener la LISTA tiene un
máximo de n ELEMENTOS. Por lo que la representación
formal de este tipo se define de la siguiente manera:
Tipo LISTA= arreglo [1..n] de ENTEROS; VarL : LISTA;
e2.- Listas doblemente enlazadas
 Una lista enlazada es una de las estructuras de datos
  fundamentales, y puede ser usada para implementar otras
  estructuras de datos. Consiste en una secuencia de nodos,
  en los que se guardan campos de datos arbitrarios y una o
  dos referencias (punteros) al nodo anterior o posterior.
 El principal beneficio de las listas enlazadas respecto a los
  array convencionales es que el orden de los elementos
  enlazados puede ser diferente al orden de almacenamiento
  en la memoria o el disco, permitiendo que el orden de
  recorrido de la lista sea diferente al de almacenamiento.
Mecanismos para implementar las listas.
 En el lenguaje C se utiliza los llamados punteros para
  representar esta estructura de datos.
 En java se encuentra un paquete completo en java.util
  de donde se pueden utilizar las listas, como un tipo
  abstracto de datos, este tipo de estructura de datos
  también se utiliza a partir y/o como una interfaz.
Indicar objetos reales que se puedan modelar con dicha estructura
 Memoria de una pc
 Caja de objetos


Concepto

 Una pila es un caso especial de lista en la cual todas las inserciones y
  supresiones tienen lugar en un extremo determinado llamado tope.

 A las pilas se les llama también listas LIFO (last-in first-out) o listas “primero
  en entrar, primero en salir”. En el TDA Pila no se definen operaciones de
  posicionamiento en la pila. Esto es debido a que todas las operaciones de acceso
  se realizan en la misma posición, el tope de la pila.
TAD que modele las PILAS

Nombre: TAD Pila
Invariante: n<>0
Operaciones:
crearPila()
*/ Devuelve un valor del tipo pila preparado para ser usado y que contiene un valor de pila vacía. Esta operación es la misma
que la de las listas generales.*/
 Precondiciones: N=0
 Pos condiciones: pila creada



insertarPila(crearPila)
*/ mediante este método se insertan datos a la pila ya creada. Con las pilas se usa el método push para insertar*/
Precondiciones: pila <> null
 Pos condiciones: insertarPila completado (datos insertados en pila)
borrarPila()
*/con este método se elmina cierta pila de datos */
 Precondiciones: pila <> null
 Pos condiciones: pila eliminada
Concepto

Una cola es una estructura de datos, caracterizada por ser una secuencia de elementos en la
que la operación de inserción push se realiza por un extremo y la operación de extracción
pop por el otro. También se le llama estructura FIFO (del inglés First In FirstOut), debido a
que el primer elemento en entrar será también el primero en salir.
Una cola es también una estructura de datos lineal en donde las eliminaciones se realizan
por uno de sus extremos que normalmente se llama frente, y las inserciones se realizan por
el otro extremo que normalmente se llama final. A estas estructuras se les llama FIFO (First
In FirstOut).

Modelación
Una cola es una estructura de datos, caracterizada por ser una secuencia de elementos en la
que la operación de inserción push se realiza por un extremo y la operación de extracción
pop por el otro. También se le llama estructura FIFO (del inglés First In FirstOut), debido a
que el primer elemento en entrar será también el primero en salir.
TAD que modele las COLAS.
Nombre: TAD COLA
Invariante: n/a
Operaciones:
crearCola()
*/ Devuelve un valor del tipo cola preparado para ser usado y que contiene un valor de pila vacía. Esta operación es la
misma que la de las listas generales.*/
 Precondiciones: N=0
 Pos condiciones: cola vacia creada



insertarCola(crearCola)
*/ mediante este método se insertan datos a la cola ya creada. */
 Precondiciones: cola <> null
 Pos condiciones: datos insertados en cola, cola insertada.
borrarCola()
*/con este método se elmina cierta cola de datos */
 Precondiciones: cola != 0
 Pos condiciones: cola eliminada
Particularidades de un TAD COLA con prioridades

Se introduce una forma de simular genericidad en los TADs
de Modula-2 mediante el uso del TAD ITEM.
En una cola de prioridad los elementos están ordenados
dependiendo de su prioridad, de manera que esté disponible
(para las operaciones Frente y Extraer) el elemento de
máxima prioridad. En caso de igualdad se sigue la regla
FIFO, de dos elementos con igual prioridad sale primero el
que primero entró. Esto se puede conseguir bien insertando
ordenadamente y extrayendo el primer elemento, bienDpto
Implementaciones de COLAS con vectores circulares
public class Cola {
private static int max = 100;
private Object elementos[];
private intfrente, post;
} // fin clase Cola
Fuentes:
• http://www.calcifer.org/documentos/librognome/glib-lists-queues.html
• http://quegrande.org/apuntes/EI/2/Alg/teoria/08-09/tema_2_-
  _pilas,_colas,_listas.pdf

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

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.
 
Lista, pilas y colas
Lista, pilas y colasLista, pilas y colas
Lista, pilas y colas
 
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
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
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
 
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 y Pilas
Listas y PilasListas y Pilas
Listas y Pilas
 
Lista,pilas y columnas
Lista,pilas y columnasLista,pilas y columnas
Lista,pilas y columnas
 
Listas Pilas Colas
Listas Pilas ColasListas Pilas Colas
Listas Pilas Colas
 
Estructuras dinámicas
Estructuras dinámicasEstructuras dinámicas
Estructuras dinámicas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas,pilas y colas
Listas,pilas y colasListas,pilas y colas
Listas,pilas y colas
 
Estructura de Datos (LISTAS, COLAS, PILAS)
Estructura de Datos (LISTAS, COLAS, PILAS)Estructura de Datos (LISTAS, COLAS, PILAS)
Estructura de Datos (LISTAS, COLAS, PILAS)
 
Estructuras de datos lineales
Estructuras de datos linealesEstructuras de datos lineales
Estructuras de datos lineales
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Pilas y Colas
Pilas y ColasPilas y Colas
Pilas y Colas
 
Estructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colasEstructura de datos: lista, pilas y colas
Estructura de datos: lista, pilas y colas
 
Pilas En C++
Pilas En C++Pilas En C++
Pilas En C++
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 

Similar a Listas, pilas & 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 colasElias Peña
 
Listas pilas colas
Listas pilas colasListas pilas colas
Listas pilas colasxpiner
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datoscharlezgt
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasElvis Perez
 
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
 
Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colaslabarra90
 
Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colaslabarra90
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrbviela6
 
Estructura de datos
Estructura de datos Estructura de datos
Estructura de datos jarydr18
 
Lista, pilas y colas
Lista, pilas y colasLista, pilas y colas
Lista, pilas y colasAmaury Pascal
 
Lista, pilas y colas
Lista, pilas y colasLista, pilas y colas
Lista, pilas y colasAmaury Pascal
 
Estructura de datos - Unidad 3 Estructuras Lineales (POO)
Estructura de datos - Unidad 3 Estructuras Lineales (POO)Estructura de datos - Unidad 3 Estructuras Lineales (POO)
Estructura de datos - Unidad 3 Estructuras Lineales (POO)José Antonio Sandoval Acosta
 

Similar a Listas, pilas & colas (20)

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, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas pilas colas
Listas pilas colasListas pilas colas
Listas pilas colas
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
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
 
Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314
 
Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colas
 
Tad lista, pilas y colas
Tad lista, pilas y colasTad lista, pilas y colas
Tad lista, pilas y colas
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Estructura de datos.vrb
Estructura de datos.vrbEstructura de datos.vrb
Estructura de datos.vrb
 
Estructura de datos
Estructura de datos Estructura de datos
Estructura de datos
 
Saiymari colas, filas y nos e que otra cosa
Saiymari colas, filas y nos e que otra cosaSaiymari colas, filas y nos e que otra cosa
Saiymari colas, filas y nos e que otra cosa
 
Colas, filas
Colas, filasColas, filas
Colas, filas
 
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
 
Estructura de datos - Unidad 3 Estructuras Lineales (POO)
Estructura de datos - Unidad 3 Estructuras Lineales (POO)Estructura de datos - Unidad 3 Estructuras Lineales (POO)
Estructura de datos - Unidad 3 Estructuras Lineales (POO)
 

Último

PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 

Último (20)

PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 

Listas, pilas & colas

  • 1. Estructuras de Datos Prof: Rina Familia Jorge Luis Maria ~ 10-1333 UNIVERSIDAD IBEROAMERICANA ~ UNIBE
  • 2. Indicar objetos reales que se puedan modelar con dicha estructura  Lista de ordenes  Lista de patrones de cualquier entidad  Lista de elementos Presentar varias definiciones de la misma - Una lista es una estructura de datos secuencial. Una manera de clasificarlas es por la forma de acceder al siguiente elemento: - Lista densa: la propia estructura determina cuál es el siguiente elemento de la lista. Ejemplo: un array.- Lista enlazada: la posición del siguiente elemento de la estructura la determina el elemento actual. Es necesario almacenar al menos la posición de memoria del primer elemento. Además es dinámica, es decir, su tamaño cambia durante la ejecución del programa.
  • 3.  Concepto: Las Listas son secuencias de 0 o más elementos de un tipo de datos almacenado en memoria. Son estructuras lineales donde cada elemento de una lista excepto el primero tiene un único predecesor y cada elemento de la lista excepto el ultimo tiene un sucesor.
  • 4.  Proponer un TAD que modele las LISTAS  Nombre: TAD Lista  Invariante: n/a  Operaciones: crearLista() */ Devuelve un valor del tipo pila preparado para ser usado y que contiene un valor de pila vacía. Esta operación es la misma que la de las listas generales.*/  Precondiciones: N=0  Pos condiciones: Lista creada
  • 5.  Relacionar el concepto de VENTANA con el de Lista Una ventana es un área visual, normalmente de forma rectangular, que contiene algún tipo de interfaz de usuario, mostrando la salida y permitiendo la entrada de datos para uno de varios procesos que se ejecutan simultáneamente. Y un Consiste en una secuencia de nodos, en los que se guardan campos de datos arbitrarios y una o dos referencias (punteros) al nodo anterior o posterior.
  • 6.  Describir las implementaciones de Listas Para representar en lenguaje C esta estructura de datos se utilizarán punteros, un tipo de datos que suministra el lenguaje. Se representará una lista vacía con la constante NULL. Se puede definir la lista enlazada de la siguiente manera: struct lista { int clave; struct lista *sig; };
  • 7.  e1.- Vectores Utilizando una estructura de datos estática arreglo para representar e implementar el TDA LISTAS. Asumamos que los ELEMENTOS que contiene la LISTA son representados por el tipo ENTERO. La cantidad de ELEMENTOS que puede contener la LISTA tiene un máximo de n ELEMENTOS. Por lo que la representación formal de este tipo se define de la siguiente manera: Tipo LISTA= arreglo [1..n] de ENTEROS; VarL : LISTA;
  • 8. e2.- Listas doblemente enlazadas  Una lista enlazada es una de las estructuras de datos fundamentales, y puede ser usada para implementar otras estructuras de datos. Consiste en una secuencia de nodos, en los que se guardan campos de datos arbitrarios y una o dos referencias (punteros) al nodo anterior o posterior.  El principal beneficio de las listas enlazadas respecto a los array convencionales es que el orden de los elementos enlazados puede ser diferente al orden de almacenamiento en la memoria o el disco, permitiendo que el orden de recorrido de la lista sea diferente al de almacenamiento.
  • 9. Mecanismos para implementar las listas.  En el lenguaje C se utiliza los llamados punteros para representar esta estructura de datos.  En java se encuentra un paquete completo en java.util de donde se pueden utilizar las listas, como un tipo abstracto de datos, este tipo de estructura de datos también se utiliza a partir y/o como una interfaz.
  • 10. Indicar objetos reales que se puedan modelar con dicha estructura  Memoria de una pc  Caja de objetos Concepto  Una pila es un caso especial de lista en la cual todas las inserciones y supresiones tienen lugar en un extremo determinado llamado tope.  A las pilas se les llama también listas LIFO (last-in first-out) o listas “primero en entrar, primero en salir”. En el TDA Pila no se definen operaciones de posicionamiento en la pila. Esto es debido a que todas las operaciones de acceso se realizan en la misma posición, el tope de la pila.
  • 11. TAD que modele las PILAS Nombre: TAD Pila Invariante: n<>0 Operaciones: crearPila() */ Devuelve un valor del tipo pila preparado para ser usado y que contiene un valor de pila vacía. Esta operación es la misma que la de las listas generales.*/ Precondiciones: N=0 Pos condiciones: pila creada insertarPila(crearPila) */ mediante este método se insertan datos a la pila ya creada. Con las pilas se usa el método push para insertar*/ Precondiciones: pila <> null Pos condiciones: insertarPila completado (datos insertados en pila) borrarPila() */con este método se elmina cierta pila de datos */ Precondiciones: pila <> null Pos condiciones: pila eliminada
  • 12. Concepto Una cola es una estructura de datos, caracterizada por ser una secuencia de elementos en la que la operación de inserción push se realiza por un extremo y la operación de extracción pop por el otro. También se le llama estructura FIFO (del inglés First In FirstOut), debido a que el primer elemento en entrar será también el primero en salir. Una cola es también una estructura de datos lineal en donde las eliminaciones se realizan por uno de sus extremos que normalmente se llama frente, y las inserciones se realizan por el otro extremo que normalmente se llama final. A estas estructuras se les llama FIFO (First In FirstOut). Modelación Una cola es una estructura de datos, caracterizada por ser una secuencia de elementos en la que la operación de inserción push se realiza por un extremo y la operación de extracción pop por el otro. También se le llama estructura FIFO (del inglés First In FirstOut), debido a que el primer elemento en entrar será también el primero en salir.
  • 13. TAD que modele las COLAS. Nombre: TAD COLA Invariante: n/a Operaciones: crearCola() */ Devuelve un valor del tipo cola preparado para ser usado y que contiene un valor de pila vacía. Esta operación es la misma que la de las listas generales.*/ Precondiciones: N=0 Pos condiciones: cola vacia creada insertarCola(crearCola) */ mediante este método se insertan datos a la cola ya creada. */ Precondiciones: cola <> null Pos condiciones: datos insertados en cola, cola insertada. borrarCola() */con este método se elmina cierta cola de datos */ Precondiciones: cola != 0 Pos condiciones: cola eliminada
  • 14. Particularidades de un TAD COLA con prioridades Se introduce una forma de simular genericidad en los TADs de Modula-2 mediante el uso del TAD ITEM. En una cola de prioridad los elementos están ordenados dependiendo de su prioridad, de manera que esté disponible (para las operaciones Frente y Extraer) el elemento de máxima prioridad. En caso de igualdad se sigue la regla FIFO, de dos elementos con igual prioridad sale primero el que primero entró. Esto se puede conseguir bien insertando ordenadamente y extrayendo el primer elemento, bienDpto
  • 15. Implementaciones de COLAS con vectores circulares public class Cola { private static int max = 100; private Object elementos[]; private intfrente, post; } // fin clase Cola