Listas, pilas y colas

Download Listas, pilas y colas

Post on 11-Jul-2015

429 views

Category:

Documents

3 download

Embed Size (px)

TRANSCRIPT

PowerPoint Presentation

Listas, Pilas y ColasEdgar Guerra Fernandez 10-1282Prof. Rina FamiliaUNIBE

Estructura de Datos

ListaCasos reales:

Lista de supermercadoLista de la escuelaLista de precios

ListaDefinicionesLa 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 dinmica, por lo que no tenemos que saber "a priori" los elementos que puede contener.

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.

En una lista enlazada simple los sucesivos items de una lista pueden ser puestos en cualquier lugar de la memoria. En una lista enlazada simple cada elemento almacena la direccn del siguiente. Esto contrasta con las listas sequenciales, cuyos items estn contiguos en memoria. ListaTAD lista:

TAD Lista[ TipoLO ]X1, ..., Xn { inv: Xi Xi+1, i 1 i < n }Constructoras:inicLisya: Lista

Modificadoras:insListOrd: ListOrd x TipoLO ListOrdelimListOrd: ListOrd x TipoLO ListOrdAnalizadoras:infoListOrd: ListOrd x int TipoLOlongListOrd: ListOrd intestaListOrd ListOrd x TipoLO int

ListaImplementaciones:

Vectores: pertenecen a una lista ya que tienen un orden una cantidad de elementos y son del mismo tipo.

ListaLas ventanas se relacionan con las listas de forma tal que cuando se disponen de varias ventanas abiertas estas se agrupan en una lista y mendiante el uso de los botones de la barra de titulo se desplaza entre cada ventana de la lista.ListaLos lenguajes permiten la implementacion de listas mediante los Arreglos.PilaAplicaciones Reales:

Cargamentos de CamionesGuardar en CajasEquipaje de las maletas

PilaDefiniciones:

Una pila (stack) es una secuencia de cero o ms elementos de un mismo tipo, que solamente puede crecer y decrecer por uno de sus extremos .

Una pila, es una estructura de datos en la que el ltimo elemento en entrar es el primero en salir, opr lo que tambin se denominan estructuras LIFO (Last In, First Out).PilaTAD Pila[ TipoP ]{ inv: TRUE }Constructoras:inicPila: PilaModificadoras:adicPila: Pila x TipoP PilaelimPila: Pila PilaAnalizadoras:infoPila: Pila TipoPvaciaPila: Pila intDestructora:destruirPila: Pila

PilaLos lenguajes de programacion definiendo una variable la cual indique la cantidad maxima de la pila, el elemento final y el vector pila.ColaDefinicion:

Una cola (queue) es una estructura lineal, en la cual los elementos slo pueden ser adicionados por uno de sus extremos y el.

Una cola es una estructura de datos donde el primer elemento en entrar es el primero en salir, tambin denominadas estructuras FIFO (First In, First Out). iminados o consultados por el otro.

ColaEjemplos:

Colas de ImpresionColas de SupermercadoColas de BancosColas de DatosColaTAD Cola[ TipoC ]{ inv: TRUE }

Constructoras:inicCola: Cola

Modificadoras:adicCola: Cola x TipoC ColaelimCola: Cola ColaAnalizadoras:infoCola: Cola TipoCvaciaCola: Cola intDestructora:destruirCola: Cola

ColaCola de Prioridad

Cuando un conjunto de procesos dentro de un computador hacen cola para utilizar algn recurso, no todos tienen la misma prioridad. Existen algunos ms importantes que otros, que requieren ser atendidos con mayor prontitud. En ese caso, al entrar un nuevo elemento a la cola, debe saltarse todos aquellos cuya prioridad sea menor y se encuentren en la fila. Para sacar un elemento, lo mismo que para consultarlo, se toma el primero de la secuencia (el ms antiguo de mayor prioridad). En el resto de operaciones, una cola de prioridades se comporta como una cola corriente

ColaCola Circular

En ella, los elementos se encuentran organizados de manera circular y uno de ellos, denominado punto de entrada, es un elemento especial sobre el cual se aplican las operaciones. Una ronda vaca se representa con el smbolo , y su punto de entrada es indefinido ( ).