CATEDRA: ESTRUCTURA DE DATOS Prof: David Rodrguez R.
PROBLEMAS PROPUESTOS SOBRE PILAS y COLAS
1-. mplemente un paquete de funciones que permitan realizar las siguientes operaciones sobre una pila de almacenamiento dinmico: O Agregar un elemento a la pila O Eliminar un elemento de la pila O Mostrar los elementos en apilados
2-. mplemente un paquete de funciones que permita transformar una expresin dada en notacin infija a notacin posfija (polaca inversa). Tome en cuenta slo los siguientes operadores y su respectivo orden de prioridad:
Sugerencia: Utilice una pila.
3-. Resuelva el problema de las torres de Hanoi sin recursividad y utilizando pilas.
4-. En el ao 5900 los cientficos venezolanos fabricarn un transbordador espacial, el cual estar provisto de un sistema de amortiguacin por discos apilados de compresin y expansin electromagntica en cada uno de los soportes del tren de aterrizaje. En esa misma poca fabricaran un robot para reparar los daos que pueda sufrir el tren de aterrizaje del transbordador espacial. Se sabe que todos los discos no sufren daos y que la solucin al problema es cambiar los discos deteriorados por el impacto del aterrizaje. Se requiere que los estudiantes de ng. nformtica elaboren un procedimiento que permita programar el robot para el cambio de los discos daados. Nota: El robot estar provisto de un mecanismo de diagnostico para determinar el estado de cada disco (TRUE = Bueno, FALSE = Daado). Cada vez que el robot localice un disco daado (ya en el proceso de reparacin) debe emitir un mensaje donde se indique la posicin donde se encuentra el disco a cambiar. La idea es simular el desmontaje de cada disco daado y el reemplazo por uno bueno. Utilice una pila dinmica, la cual debe crearse en forma aleatoria segn lo expuesto antes.
5-. Escriba un paquete de funciones que permitan realizar las siguientes operaciones sobre una cola de almacenamiento dinmico: O Agregar un elemento a la cola O Eliminar un elemento de la cola O Mostrar los elementos en cola
6-. Una Bicola (llamada tambin Dipolo) es una estructura tipo cola donde las inserciones y/o las eliminaciones de un elemento pueden hacerse por cualquiera de los extremos, se requiere implementar un paquete de funciones que permitan realizar las siguientes operaciones, sobre una Bicola de almacenamiento Dinmico, que almacena valores enteros: O agregar un elemento a la Bicola si se sabe lo siguiente: Se colocara el elemento por el extremo cuyo final y/o frente sea mayor al valor dado. En caso de que esto no ocurra se insertara por el frente derecho. Operador Prioridad en Ia piIa Prioridad fuera de Ia piIa ) 3 4 (avaluacin de dcha. a izda.) * , / 2 2 (avaluacin de dcha. a izda.) + , - 1 1 (avaluacin de dcha. a izda.) ( , ) 0 5 (operador especial)
O Eliminar un elemento de la Bicola. El sitio de la eliminacin se determinar con un aleatorio
de la siguiente manera: 1 = Frente derecho , 2 = Frente izquierdo O Mostrar los datos en la Bicola. El recorrido se har por el frente de su preferencia.
La estructura de la bicola debe ser: Predecesor, Nmero, Sucesor.
7-. mplemente un paquete de funciones para simular un sistema multiusuario de computadoras sencillo del modo siguiente: Cada usuario tiene una D (identificacin) nica (nmero aleatorio entre 1 y 25), y quiere ejecutar varias transacciones en el computador. Sin embargo, la computadora slo puede procesar una transaccin en cualquier momento dado. Cada solicitud de tiempo de maquina lleva la identificacin del usuario (D) y el tiempo de duracin de la tarea (nmero aleatorio entre 1 y 10). Los ingresos se clasifican incrementando la hora de inicio (la cual parte de 0 cuando comienza la simulacin) y todos los tiempos estn dados en segundos. Suponga que un usuario no solicita tiempo de mquina para una nueva transaccin hasta que no termine la anterior y que la computadora acepta transacciones en base a "primero en llegar primero en despacharse. Cada vez que se atienda un usuario debe imprimirse un mensaje donde se indique la identificacin del usuario, la hora de inicio de la transaccin y la hora final. Al final debe imprimirse el tiempo promedio de espera para una transaccin. (El tiempo promedio de espera es la cantidad de tiempo entre la hora en que se solicito la transaccin y la hora en que empez).
Nota: - En el momento de la entrada de un proceso a la cola se toma la hora de llegada, es decir la cola tiene la siguiente estructura: D, Hora de Llegada, Tiempo de Duracin. Asuma que no se pierde tiempo entre la solicitud de entrada y el cambio a un nuevo proceso.
8-. Simule usando almacenamiento dinmico, el funcionamiento de un pequeo supermercado que contiene 4 cajeras y 32 carros, de acuerdo a las siguientes reglas: a) Si al llegar un cliente no hay carros disponibles, espera a que lo haya. Si hay una cola con 10 clientes en espera de un carro el cliente decide abandonar la operacin. b) En le momento en que un cliente sale del supermercado el carro que utilizo queda disponible. c) Ningn cliente que este realizando la operacin de compra abandonar el supermercado. d) Cuando un cliente termina la compra, se coloca en la cola de caja en la que haya menos gente, y no se cambia. e) Utilice el siguiente criterio para la ejecucin de la simulacin: O Tomar carro = Aleatorio entre 1 y 3 O r a la cola de caja = Aleatorio entre 4 y 6 O Despacho en caja = Aleatorio entre 7 y 9 (se despacha de la caja cuya cola es la mas grande).
Inteligencia artificial: Lo que usted necesita saber sobre el aprendizaje automático, robótica, aprendizaje profundo, Internet de las cosas, redes neuronales, y nuestro futuro