1 UNIDAD IV. PILAS, COLAS, RECURSION APLICADAS A LENGUAJE C.Algoritmos , Estructuras y Programación II. Docente: Yesika Medina
2 Las estructuras de datos pilas y colas que son probablemente las utilizadas mas frecuentemente en los programas más usuales. Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden. Las pilas se conocen también como estructuras LIFO (Last-in, first-out, último en entrar-primero en salir) y las colas como estructuras FIFO (nirSt-in, First-out, primero en entrar-primero en salir). Entre las numerosas aplicaciones de las pilas destaca la evaluación de expresiones algebraicas, así como la organización de la memoria. Las colas tienen numerosas aplicaciones en el mundo de la computación: colas de mensajes, colas de tareas a realizar por una impresora, colas de prioridades.
3 OPERACONES CON PILA. Novela Enciclopedia DiccionarioLa operación Insertar (push) añade un elemento en la cima de la pila . La operación Quitar (pop) elimina o saca un elemento de la pila. La Figura 15.3 muestra una secuencia de operaciones Insertar y Quitar. El último elemento añadido a la pila es el primero que se quita de la Novela Enciclopedia Diccionario Figura Pila de libros.
4
5 La declaración de una pila incluye los datos y operaciones ya citados anteriormente. 1. Datos de la pila (tipo Ti pouat-a, que es conveniente definirlo mediante typedef). 2. Verificar que la pila no está llena antes de intentar insertar o poner (<
6 Insertar (push) 1. verificar si la pila no está llena. 2Insertar (push) 1.verificar si la pila no está llena. 2.Incrementar en 1 el puntero de la pila. ?.Almacenar elemento en la posición del puntero de la pila. Quitar (pop) 1.si la pila no está vacía. 2.Leer el elemento de la posición del puntero de la pila. 3.Decrementar en 1 el puntero de la pila.
7 Las operaciones de la pila definidas en la especificación se implementan en el archivo PILAARRAY.C para después formar un proyecto con otros módulos y la función principal. / * ARCHIVO PILAARRAY.C* / #include «pilaarray.h" / * Inicializa la pila vacia* / void CrearPila(Pila* P) p -> cima = -1;
8 COLAS. Una cola es una estructura de datos que almacena elementos en una lista y permite acceder a los datos por uno de los dos extremos de la . Un elemento se inserta en la cola (parte final) de la lista y se suprime o elimina por la frente (parte inicial, cabeza) de la lista. Las aplicaciones utilizan una cola para almacenar elementos en su orden de aparición o concurrencia
9 OPERACIONES CON COLA. Acciones que están permitidas en una cola son: Creación de una cola vacía. Verificación de que una cola estd vacía. Añadir un dato al final de una cola. Eliminación de los datos de la cabeza de la cola.