14
“AÑO DE LA DIVERSIFICACIÓN PROUCTIVA Y DEL FORTALECIMIENTO DE LA EDUCACIÓN” UNIVERSIDAD NACIONAL DE LA AMAZONIA PERUANA “Facultad de Ingeniería de Sistemas e Informática” PILAS Y COLAS Contreras Jiménez Maritza Isuiza del Aguila Karen Curso: Docente: Integrantes: Ing. Elvis del Aguila López Algoritmo y Estructura de Datos II

pilas y colas

Embed Size (px)

DESCRIPTION

pilas y colas

Citation preview

Presentacin de PowerPoint

AO DE LA DIVERSIFICACIN PROUCTIVA Y DEL FORTALECIMIENTO DE LA EDUCACINUNIVERSIDAD NACIONAL DE LA AMAZONIA PERUANAFacultad de Ingeniera de Sistemas e InformticaPILAS Y COLASContreras Jimnez MaritzaIsuiza del Aguila KarenCurso:Docente:Integrantes:Ing. Elvis del Aguila LpezAlgoritmo y Estructura de Datos IIPILASUna pila es una estructura de datos a la cual se puede acceder solo por un extremo de la misma.

Las operaciones de insercin y extraccin se realizan a travs del tope, por lo cual no se puede acceder a cualquier elemento de la pila.

Se la suele llamar estructura L.I.F.O. como acrnimo de las palabras inglesas "last in, firstout" (ltimo en entrar, primero en salir).

La pila se considera un grupo ordenado de elementos, teniendo en cuenta que el orden de los mismos depende del tiempo que lleven "dentro" de la estructuraEntraSaleTopeOperaciones de una PilaLas operaciones bsicas de una pila son Push (empujar, meter) y Pop (sacar)

Push: aade un nuevo elemento a la pila

Pop: elimina un elemento de la pila

Otras operaciones usualmente incluidas en el tipo de dato abstracto pila son:

isEmpty (estVacia): verifica si la pila est vaca.

isFull (estLlena): verifica si la pila est llena

Ejemplotop224Push(2)Push(4)247Push(7)242Pop()Pop()toptoptoptoptopImplementacin con arreglosUna pila es una coleccin ordenada de objetos. En C, los arreglos permiten almacenar colecciones ordenadas.La desventaja de implementar una pila mediante un arreglo es que esta ltima es de tamao fijo, mientras que la pila es de tamao dinmico.Aplicaciones

Navegador WebSe almacenan los sitios previamente visitadosCuando el usuario quiere regresar (presiona el botn de retroceso), simplemente se extrae la ltima direccin (pop) de la pila de sitios visitados.Editores de textoLos cambios efectuados se almacenan en una pilaUsualmente implementada como arregloUsuario puede deshacer los cambios mediante la operacin undo, la cual extraer el estado del texto antes del ltimo cambio realizado.

COLASUna cola es una estructura de datos donde el primer elemento en entrar es el primero en salir, tambin denominadas estructuras FIFO (First In, FirstOut).

Esta estructura de datos se puede definir como una lista enlazada con acceso FIFO a la que slo se tiene acceso al final de la lista para meter elementos y al principio de esta para sacarlos

se pueden insertar elementos por uno de los extremos, llamado frente, y retirar los mismos por el otro extremo, denominado final.EntraSalecolafrenteOperaciones de una ColaLas operaciones bsicas de una cola son enqueue (meter) y dequeue (sacar)

enqueue: aade un nuevo elemento a final de la coladequeue: elimina (saca) el primer elemento de la colaOtras operaciones usualmente incluidas en el tipo abstracto COLA son:

isEmpty (estVacia): verifica si la cola est vacaisFull (estLlena): verifica si la cola est llenaEjemploaababcbcNo es necesario movertodos los elementosEl primero en entrar(a), es el primero en salir (a)AplicacionesSimular situaciones reales: caja del supermercado, surtidor de combustible, etc.

Colas de trabajos a realizar por cualquier dispositivo: una impresora, un disco, etc.

Scheduler: asignacin de tiempo de procesador a los procesos en un sistema operativo multiusuario (sin prioridad)

Algoritmos de bsqueda en anchura sobre rboles y grafosImplementacin con arreglosUna cola es una coleccin ordenada de objetos.

En C, los arreglos permiten almacenar colecciones ordenadas.

Misma desventaja: los arreglos tienen tamao fijo.

Uso eficiente mediante un arreglo circularColas circularesEl objetivo de una cola circular es aprovechar al mximo el espacio del arreglo.La idea es insertar elementos en las localidades previamente desocupadas.La implementacin tradicional considera dejar un espacio entre el frente y la cola.aefgbcdefgcolahefgifrentecolafrentecolafrenteDiferencias entre pila y colaSe entiende por cola una estructura de datos en la que se aaden nuevos tems en un extremo y se suprimen tems viejos en el opuesto.

A diferencia de las colas, en las pilas los tems se aaden y se eliminan en el mismo extremo.