AD

¿Ya dominas lo básico? Un curso estructurado de Ruby es la vía rápida para dar el salto.

Ver cursos de Ruby en Udemy

Enlace de afiliado. No te cuesta nada extra.

💎Lecciones de Ruby
Lección 30 / 68

Pilas y colas (estructuras de datos básicas)

En esta lección usarás dos formas clásicas de guardar cosas en espera.

Una pila saca el último que entró: se añade con push y se saca con pop. Una cola saca el primero: se añade con push y se saca con shift. En Ruby las dos se hacen con un array normal; la diferencia está en qué método usas para sacar.

El código de ejemplo mete dos elementos en cada una y saca uno, para que se vea que salen distintos.

El detalle a recordar es pop frente a shift: pop quita del final, shift quita del principio. Confundirlos convierte una cola en una pila sin dar ningún error, y el fallo aparece como «las tareas se procesan en orden raro», que cuesta relacionar con la causa.

Las pilas están detrás del botón «deshacer» y del propio historial de llamadas de un programa; las colas, detrás de los trabajos en segundo plano y las peticiones en espera. Para tareas entre hilos, Ruby tiene además Thread::Queue, que ya es segura para uso concurrente.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Ruby directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)