Pilas y Colas Estructuras de Datos Pilas Son
- Slides: 17
Pilas y Colas Estructuras de Datos
Pilas • Son estructuras utilizadas muy a menudo como herramientas de programación de tipo LIFO (Last in-First out) • Permiten el acceso solo a un elemento a la vez: el último elemento insertado • La mayoría de los procesadores utilizan una arquitectura basada en pilas
Pilas - Operaciones • Básicamente poseen dos operaciones primarias: – Push: inserta la data en el tope de la pila – Pop: remueve la data del tope de la pila
Pilas de libros
Pilas de libros
Pilas Implementadas en listas Constructores: Push (Insertar al inicio) Pop (Eliminar al inicio) Selectores: Pila-Vacia? (El apuntado Cabeza es Nul? ) Top (Mostrar el primero)
Pilas Implementadas en listas public class CPila. L extends CLista. Simple{ public CPila. L(){super(); } public void Push( Cnodo nuevo ){ Inserta. Primero(nuevo); } public Cnodo Pop(){ Cnodo; nodo = Eliminar. Primero(); return nodo; } public int Peek(){ Cnodo; int dato; nodo = get. Cabeza(); dato = nodo. get. IData(); return dato; } public boolean Pila. Vacia(){ return ( Esta. Vacia() ); } public void Imprime. Pila(){ Imprime. Lista(); } }
Pilas Implementadas en Vectores - Algoritmos Pila. Vacia( S ) If top( S ) = 0 return true Else return false Push( S, x ) Top( S ) <– Top( S ) + 1 S[ top( S ) ] <– x Pop( S ) If Pila. Vacia error else Top( S ) <– Top( S ) - 1 return S[ Top( S ) + 1 ]
Pilas - Eficiencia • El tiempo de ejecución de las operaciones primarias de una pila no depende del tamaño de la pila • Push y Pop se realizan en tiempo constante O(1) - no es necesario hacer ninguna comparación
Colas • Son estructuras de datos de tipo FIFO (First in-First out) • Simulan una cola de personas en el cine • Las colas son herramientas de programación como las pilas
Colas - Operaciones • Operaciones primarias: – Encolar: agrega un nuevo dato al final de la cola – Desencolar: elimina un dato del principio de la cola
Colas - Operaciones
Colas - Operaciones
Colas Implementadas en listas Constructores: Encolar (Insertar al final) Desencolar (Eliminar al inicio) Selectores: Cola-Vacia? (El apuntado Cabeza es Nil? ) Primero-Cola (Mostrar el primero)
Colas Implementadas en Vectores - Algoritmos Encolar( Q, x ) Q[ Fin( Q ) ] <– x if Fin( Q ) = length( Q ) Fin( Q ) <– 1 else Fin( Q ) <– Fin( Q ) + 1 Desencolar( Q ) x <– Q[ Cabeza( Q ) ] if Cabeza( Q ) = Length( Q ) Cabeza( Q ) <– 1 else Cabeza( Q ) <– Cabeza( Q ) + 1 return x
Colas - Eficiencia • El tiempo de ejecución de las operaciones primarias de una colas no depende del tamaño de la cola • Encolar y Desencolar se realizan en tiempo constante O(1) - no es necesario hacer ninguna comparación
Cola doble enlace La mejor implementación de cola, es con una lista, donde se tenga un apuntador a la cabeza y uno al último de la lista. Null
- Tda pila
- Estructuras lineales
- Que es una pila en estructura de datos
- Aplicacion de estructuras de datos vectores y matrices
- Estructuras de datos
- Tipos de árboles estructura de datos
- Antecedentes de la teoria de colas
- Cavidad clase 3
- Bradley colas
- T student tabla
- Warm mix asphalt
- Teoria de colas investigacion de operaciones
- Que es la notacion de kendall
- Modelo de colas m/m/s/k
- Ciclo de mejora continua
- Duración media
- Quick connect colas
- Colas