Вы находитесь на странице: 1из 17

Docente Responsable:

Ing. Malhena Snchez

Introduccin Pilas - Stack


Concepto Ejemplo Operaciones Implementacin Conclusin Actividad Concepto Ejemplo Operaciones Implementacin Conclusin

Colas -Queue

Actividad

Dentro de las estructuras de datos importantes en programacin se encuentran las denominadas pilas y colas Los desarrolladores utilizan los arrays y las variantes de listas enlazadas para construir una gran variedad de estructuras de datos complejas. Este captulo explora dos de esas estructuras: las Pilas y las Colas

Concepto
Uno de los conceptos ms tiles en computacin es la pila o stack Es un conjunto de elementos, en la que: Los elementos se aaden y se remueven por un solo extremo Este extremo es llamado tope de la pila. El ltimo elemento en llegar, ser el primero en salir: LAST IN, FIRST OUT -> LIFO

Ejemplo:
Cuando un empleado se va de vacaciones, le llega correo a su escritorio. Las cartas se van apilando. Al regresar de vacaciones, la ultima carga en llegar, ser la primera que revisar Al terminar de revisarla, la nueva carta del tope de la pila habr cambiado del pilo de cartas, la ms nueva que queda, ser la siguiente en ser revisada.

Operaciones
Dada una Pila llamada S
Qu datos serian importantes conocer sobre la Pila? Y que operaciones podramos efectuar a la misma?

La operacin push aumenta un elemento a la pila, y esta aumenta en su tamao. La operacin pop remueve el elemento Tope de la pila y lo retorna. La pila disminuye su tamao.

Operaciones

Implementacin: Implementacin:
Las pilas pueden ser implementadas empleando listas o vectores.

En Conclusin: Conclusin:
La pila es un conjunto de elementos de los cuales solo conozco y puedo ver el TOPE Cada elemento en la pila puede contener informacin de cualquier tipo, es decir, es genrico.

Caso prctico: prctico:


El compilador de una calculadora siempre sabe cuando se ha escrito una expresin matemtica incorrecta (mal uso de parntesis, duplicacin de operadores aritmticos, etc.) Como lo hace? con el uso de pilas. pilas
El compilador lee y analiza expresiones escritas como: (7+4)) ERROR ((7 OK ((7+4) * 5 / 4*2-6) retorna OK o error segn sea el caso.

Implemente en C todas las operaciones para administrar una pila y solucione el caso prctico del compilador de una calculadora bsica (+,-,*,/,%,^) Los resultados deber subirlos en la plataforma previo a la sustentacin del trabajo.

Concepto
Abunda este concepto, en la vida cotidiana
Cuando vamos al cine, para comprar las entradas Cuando estamos en el supermercado, en el banco, etc.

Como funciona
Se puede decir que la cola tiene 2 extremos FRENTE, Y FINAL

Todo el que llega se ubica al final de la cola Todo el que sale, lo hace por el frente de la cola

La cola es por turno


El primero en llegar, tiene la seguridad de que ser el primero en salir: FIRST IN FIRST OUT ->

FIFO

Ejemplo:
La computadora utiliza las colas para manejar la impresin de documentos, tiempo compartido, etc. Queue -> Cola
Cada documento que se manda a imprimir es encolado, uno a uno es enviado a la impresora. El orden de impresin es de acuerdo al orden de llegada.

Operaciones
Para una Cola Q sus operaciones bsicas son:
EnColar: EnColar: Insertar un elemento nuevo a la cola, al final de la misma, El final aumenta DesEnColar: DesEnColar: Cuando un elemento es removido de la cola Remueve el elemento del frente Retorna el elemento removido No se puede ejecutar si la cola Esta Vaca

As como en la pila
Cualquier intento de acceder a elementos en una Cola Vaca produce un SUBDESBORDAMIENTO DE LA COLA

Operaciones

Implementacin: Implementacin:
Al igual que las pilas, las colas pueden ser implementadas empleando listas o vectores.

En Conclusin: Conclusin:
La cola es un conjunto de elementos de los cuales conozco el inicio y el final Cada elemento en la cola puede contener informacin de cualquier tipo, es decir, es genrico.

Investigacin: Investigacin:
Una vez revisado los conceptos bsicos de pilas y colas, investigue sobre: Pilas dinmicas y estticas Colas dinmicas y estticas Colas de prioridad Los resultados deber subirlos en un documento a la plataforma y estudiarlos para la evaluacin del captulo.