Las colas y pilas son estructuras de datos fundamentales en la programación, cada una con características particulares que las hacen útiles para diferentes aplicaciones. Las colas operan bajo el principio "
Una cola se diferencia de una pila en que las operaciones de inserción y extracción siguen el principio ee primero entrar primero en salir!
Ocurre un error si la cola está vacía
Una cola se diferencia de una pila en que las operaciones de inserción y extracción siguen el principio de primero en entrar - primero en salir
Son
Cuando termina la ejecución del subprograma, los valores almacenados en la pila se recuperan para continuar con la ejecución del programa en el punto en el cual fue interrumpido
Frente: se devuelve el elemento frontal de la cola, elemento que entro
Desencolar: Se elimina el elemento frontal de la cola
Encolar: Se añade un elemento a la cola
Se Crea la cola vacia
Arreglos con tamaño fijo y frene fijo o movible o representacion Cicular
En forma de Vector
Colas Circulares
Colas de Prioridad
Bicolas
Bicolas E.Restringida
Bicolas S.Restringida
Son aquellas donde solo se elimina por el final.
Son aquellas donde la insercion solo se hace por el final
Los elementos se atienden en el orden indicado por una prioridad asociada a cada uno
Son colas en donde los nodos se pueden añadir y quitar ambos extremos
En las que el primer y ultimo elemento están unidos
Caracterizada por ser una secuencia de elementos en la que la operación de inserción push se realiza por un extremo y la operación de extracción pop por el otro.
Principales aplicaciones
5. Convertir notación infija a postfija o prefija.
6. Para la implementación de la recursividad.
4.-En la recuperación de elementos en orden inverso al que fueron colocados (en un depósito, una pila de contenedores, sillas, etc.).
3.- El mecanismo que establecen los lenguajes de programación para garantizar las llamadas anidadas a subprogramas dentro de una aplicación.
2. En la programación de sistemas (para registrar llamadas a subprogramas y recuperar los datos anteriores, o recuperar los parámetros).
1. Se usan en los compiladores (parsers: reconocedores sintácticos de los compiladores).
Al apilar un elemento es necesario controlar que no se inserte un elemento si la pila está llena.
Tiene un rendimiento igualmente bueno en los mejores y peores casos
Un TDA de la familia pila incluye a menudo 5 operaciones:
5. VACIA (P): Devuelve verdadero si la pila P esta vacía y falso en caso de lo contrario.
4. METE (x, P) en ingles PUSH: Inserta el elemento x en la parte superior de la pila P.
3. SACA (P): POOP, Suprime el elemento superior de la pila
2. TOPE (P): Devuelve el valor del elemento de la parte superior de la pila P.
1. ANULA (P): Convierte la pila P en una pila vacía.
no son estructuras de datos fundamentales
Arreglos
Listas enlazadas
En forma de vector
Lista en las que todas las inserciones y supresiones tienen lugar en un extremo denominado tope. También se les llama “Listas LIFO” (Last in first out) o listas “ultimo en entrar, primero en salir”.