Очередь — это линейная структура, которая следует определенному порядку выполнения операций. Порядок – «первым пришел – первым обслужен» (FIFO).
Разница между стеками и очередями заключается в удалении. В стеке мы удаляем последний добавленный элемент; в очереди мы удаляем элемент, добавленный последним.

Операции с очередью.
В очереди в основном выполняются следующие четыре основные операции:
Поставить в очередь:добавляет элемент в очередь. Если очередь заполнена, это называется состоянием переполнения.
Удалить из очереди: удаляет элемент из очереди. Элементы выталкиваются в том же порядке, в котором они выдвигаются. Если очередь пуста, то говорят, что это состояние недостаточного заполнения.
Передняя сторона:Получить первый элемент из очереди.
Задняя сторона: Получить последний элемент из очереди.
Реализация массива очереди
Для реализации очереди нам нужно отслеживать два индекса, передний и задний. Мы ставим элемент в очередь сзади и удаляем из очереди элемент спереди. Если просто увеличивать передний и задний индексы, то могут быть проблемы, передний может достигать конца массива. Решение этой проблемы состоит в том, чтобы увеличить перед и зад по кругу.
Реализация очереди с использованием массивов