Sobes.tech
Junior

¿Qué es una cola en el contexto de la programación?

sobes.tech AI

Respuesta de la IA

La cola (Queue) es un tipo de dato abstracto que implementa el principio FIFO (First-In, First-Out), donde el primer elemento añadido será el primero en ser eliminado.

Operaciones principales:

  • Enqueue: Añadir un elemento al final de la cola.
  • Dequeue: Eliminar un elemento del principio de la cola.
  • Peek/Front: Obtener el valor del elemento en el principio de la cola sin eliminarlo.
  • IsEmpty: Comprobar si la cola está vacía.
  • Size: Obtener el número actual de elementos en la cola.

Ejemplos de uso:

  • Gestión de tareas en sistemas operativos.
  • Procesamiento de solicitudes en servidores web.
  • Algoritmos de recorrido de grafos (BFS - Breadth-First Search).
  • Buffers para procesamiento secuencial de datos.

La implementación puede basarse en arreglos o listas enlazadas.

# Ejemplo de implementación de una cola usando una lista en Python
class Queue:
    def __init__(self):
        self.items = []

    def is_empty(self):
        return self.items == []

    def enqueue(self, item):
        self.items.append(item) # Añadir al final

    def dequeue(self):
        if not self.is_empty():
            return self.items.pop(0) # Eliminar del principio
        return None

    def peek(self):
        if not self.is_empty():
            return self.items[0]
        return None

    def size(self):
        return len(self.items)